基本操作
# 创建用户,以moderation为例
CREATE USER 'moderation'@'%' IDENTIFIED by 'cfaef8629571bc59593a6f2ca5522e7d';
# 创建数据库
create database moderation;
# 分配权限[分配允许moderation账号从任意一个主机连接到数据库moderation]
grant all PRIVILEGES on moderation.* to 'moderation'@'%';
# 刷新:这句一定要加上!!!
flush privileges;
#原则:单用户单实例
#遇到需要为该用户分配其他实例权限时,原则上不分配全部权限,只分配selelct权限,如#果要分布全部权限,则问清楚开发可以选择合并用户
#5、移除权限(一般不会使用到):
REVOKE ALL PRIVILEGES ON moderation.* FROM 'beta'@'%';
分配权限
如果没有设置分配权限,那么初次访问mysql,会提示如下:
ERROR 1130: Host '192.168.1.101' is not allowed to connect to this MySQL server
所以这个时候就需要给当前mysql服务器192.168.1.101
分配访问权限;具体操作如下
# 允许用户root从ip是192.168.1.101的主机连接到mysql的服务器,并使用root作为密码访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.101' IDENTIFIED BY 'root' WITH GRANT OPTION;
# 一定要刷新权限
flush privileges
或者可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%":
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
mysql>flush privileges;