mysql 创建数据库,添加用户,用户授权
一、创建mysql数据库
1.创建数据库语法
--创建名称为“testdb”数据库,并设定编码集为utf8
CREATE DATABASE IF NOT EXISTS testdb DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
二、创建用户(mysql是先创建数据库,在创建用户,然后把数据的权限分配给用户;oracle是先创建用户,后创建数据库)
1.新建用户
--创建了一个名为:test 密码为:1234 的用户
create user 'test'@'localhost' identified by '1234';
注意:
此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
2.查询用户
--查询用户
select user,host from mysql.user;
3.删除用户
--删除用户“test”
drop user [email protected] ;
--若创建的用户允许任何电脑登陆,删除用户如下
drop user [email protected]'%';
4.更改密码
--方法1,密码实时更新;修改用户“test”的密码为“1122”
set password for test =password('1122');
--方法2,需要刷新;修改用户“test”的密码为“1234”
update mysql.user set password=password('1234') where user='test'
--刷新
flush privileges;
5.用户分配权限
-- 给用户赋值权限,授予用户“test”通过外网IP对于该数据库“testdb”中表的创建、修改、删除权限,以及表数据的增删查改权限
grant create,alter,drop,select,insert,update,delete on testdb.uesr_info to [email protected] identified by '1234';
--刷新权限
flush privileges;
6.查看用户权限
--查看用户“test”
show grants for test;
注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:flush privileges;
**
解决办法 grant all privileges on . to [email protected] identified by ‘1’;
flush privileges;
拿 joe 1 登陆
附:
mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;
**1.**权限1,权限2,…权限n代表select,insert,update,delete…等14个权限。
2..当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
**3.*当数据库名称.表名称被.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
**4.**用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。
5.‘连接口令’不能为空,否则创建失败。
例如:
mysql>grant select,insert,update,delete,create,drop on vtdc.employee to [email protected] identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
mysql>grant all privileges on vtdc.* to [email protected] identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on . to [email protected] identified by ‘123′;
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on . to [email protected] identified by ‘123′;
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
**
上一篇: MySQL8.0操作笔记(一) 创建数据库及用户、用户授权
下一篇: MySQL的账户创建与权限分配
推荐阅读
-
MYSQL基础之连接MYSQL、修改密码、添加用户
-
MySQL创建新用户代码实例
-
使用phpMyAdmin修改MySQL数据库root用户密码的方法
-
MySQL创建用户与授权方法、MySQL查看版本号、MySQL执行SQL脚本的方法
-
谈一谈个人利用Java的mysql的知识完成的数据库的项目-----用户信息管理系统
-
mysql创建数据库,添加用户,用户授权实操方法
-
MySQL创建用户错误ERROR 1396 (HY000): Operation CREATE USER failed for 'XXXX'@'XXXX'问题解
-
mysql创建本地用户及赋予数据库权限的方法示例
-
MySQL添加新用户、为用户创建数据库、为新用户分配权限
-
MySQL 创建用户、授权用户、撤销用户权限、更改用户密码、删除用户(实用技巧)