下面所有操作在Mysql5.7版本执行。
登录MYSQL
@>mysql -u root -p
@>密码
然后回车即可
一、新建用户
语法
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
重点说下host参数:如果想让该用户可以从任意远程主机登陆,需要使用通配符%
//创建bk用户,密码是123456 (只能本地访问)
CREATE USER 'bk'@'localhost' IDENTIFIED BY '123456';
//创建test用户,密码是123456 (可以远程访问)
CREATE USER 'test'@'%' IDENTIFIED BY '123456';
二、为用户授权
语法
GRANT privileges ON databasename.tablename TO 'username'@'host'
分析:
- privileges:操作权限,如:
SELECT
,INSERT
,UPDATE
等,所有权限则使用ALL
- databasename:数据库名
- tablename:表名,如果要授予所有数据库和表所有操作权限,则可用
*
表示,如*.*
GRANT ALL ON db1.* TO 'test'@'%';
GRANT SELECT, INSERT ON db2.user TO 'test'@'%';
注意:
一般授权命令,通过root用户来执行。如果想让其他用户可以授权需要给用户增加授权权限:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
三、删除用户
语法
DROP USER 'username'@'host';
例子:
DROP USER 'bk'@'localhost';
四、修改用户密码
语法
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
注意:在mysql5.7.9版本之后废弃了password字段和password()函数。
例子:
SET PASSWORD FOR 'test'@'%' = PASSWORD("123456");