)1)查看具有MySQL的用户的权限: show grants for用户名
Maria db [ neutron ] showgrantsforroot;
)2)使用授权命令创建新用户,设置用户密码,并增加用户权限。 其格式如下。 mysqlgrantprivilegesonwhattouser [ identified by ' password ' ] [ withgrantoption ];
例如:
grantallprivilegesonneutron.* to ' neutron ' @ ' localhost ' identified by ' neutron _ dbpass ';
grantallprivilegesonneutron.* to ' neutron ' @ ' % ' identified by ' neutron _ dbpass ';
neutron.* :代表neutron数据库中的所有表,必须在获得许可之前创建neutron库。 如果所有库的所有表都用*.*表示
“neutron'@'localhost”:表示创建的用户名neutron,@后表示允许访问数据的客户端,“localhost”表示本地,“%”表示所有主机
identified by ' password ' :设置neutron用户密码
)3)数据库授权方式grantprivilegesonwhattouser [ identified by ' password ' ] [ withgrantoption ]
权限是您希望提供的MySQL用户权限列表,用逗号分隔。 可以指定的权限可以分为三种类型。
1 )数据库/数据表/数据列权限:
Alter:修改现有数据表和索引,包括添加/删除列。
Create:创建新的数据库或数据表。
Delete:删除表中的记录。
Drop:删除数据表或数据库。
索引:创建或删除索引。
Insert:添加表中的记录。
Select:查看/搜索表中的记录。
Update:修改表中的现有记录。
MySQL授权选择、插入、删除、创建、drop on *.* (或nova.*其他库或表) to '用户名' @ ' localhost ' identte
2 )全局管理MySQL用户权限:
file:在MySQL服务器上读取和写入文件。
PROCESS:显示或杀死属于其他用户的服务线程。
RELOAD:重新加载访问控制表并更新日志等。
SHUTDOWN:将退出MySQL服务。
3 )特殊权限:
ALL:可以做任何事(与root相同)。
USAGE:只允许登录。 我什么也做不了。
在开发和实际应用方面,用户不应该只由root用户连接到数据库。 使用root用户进行测试时很有用,但会给系统带来重大的安全风险,也不利于管理技术的提高。
请不要授予只插入数据的用户删除数据的权限。 MySql的用户管理通过用户表实现。 添加新用户的常用方法有两种。 一种方法是在用户表中插入适当的数据行并设置适当的权限。 第二,使用授权命令创建具有某些权限的用户。 其中,GRANT的常用用法如下:
grantallonmydb.* to new username @ hostnameidentifiedby " password "
grantusageon *.* to new username @ hostnameidentifiedby“密码”
grant select,insert,updateonmydb.* to new username @ hostnameidentifiedby " password "
授权更新,deleteonmydb.testtabletonewusername @ hostnameidentifiedby“密码”
要授予此用户管理相应对象权限的能力,请在许可后面添加“使用许可”选项。
对于通过插入User表添加的用户,请在Password字段中应用Password函数来更新加密,以防止恶意人员窃取密码。
必须对不再使用的用户给予清除,权限超出边界的用户必须立即收回权限。 回收权限可以更新用户表中的相应字段,也可以使用REVOKE进行操作。