一、创建用户:以root用户登录到数据库进行用户创建
命令:
CREATE USER \'username\'@\'host\' IDENTIFIED BY \'password\';
例如:
CREATE USER \'test_admin\'@\'localhost\' IDENTIFIED BY \'admin@123_S\'; CREATE USER \'test_admin2\'@\'%\' IDENTIFIED BY \'\';
note:
username——将要创建的用户名;
host——指定该用户在哪个主机上可以登录,"localhost"指该用户只能在本地登录,不能在另外一台机器上远程登录,如果想远程登录,将"localhost"改为"%",表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;
password——该用户的登录密码,密码可以为空,若为空则该用户可以不需要密码登录服务器。
二、授权:以root用户登录到数据库进行授权
命令:
GRANT privileges ON databasename.tablename TO \'username\'@\'host\'
note:
privileges——用户的操作权限,如SELECT等。如果授予所有权限则使用ALL。
databasename——数据库名称。tablename——表名。如果要给该用户授予对所有数据库和表的相应操作权限则可用*表示,例如*.*
例如:
GRANT SELECT ON test_db.* TO \'test_admin2\'@\'%\'; flush privileges; note:必须执行flush privileges;
三、撤销用户权限
命令:
REVOKE privilege ON databasename.tablename FROM \'username\'@\'host\';
例如:
REVOKE SELECT ON test_db.* FROM \'test_min\'@\'%\';
四、删除账户及权限:
命令:
drop user \'username\'@\'host\';
五、查看用户的授权
命令:
SHOW GRANTS FOR \'username\'@\'host\'
例如:
mysql> SHOW GRANTS FOR \'test_admin\'@\'%\' ; +----------------------------------------------------------------+ | Grants for test_admin@% | +----------------------------------------------------------------+ | GRANT USAGE ON *.* TO \'test_admin\'@\'%\' | | GRANT ALL PRIVILEGES ON `test_manage_db`.* TO \'test_admin\'@\'%\' | +----------------------------------------------------------------+ 2 rows in set (0.00 sec) mysql>