背景:使用的mysql版本为 mysql Ver 14.14 Distrib 5.6.47, for Linux (x86_64)。
需要在root用户外增加一个新的用户,用户现场运维登录数据库操作数据。
直接使用insert向mysql.use表中添加用户,报错:Field 'ssl_cipher' doesn't have a default value;
正确添加用户方法如下:
1、登录数据库
#mysql –uroot -proot@123
2、使用mysql库
mysql>use mysql;
3、添加用户账号
mysql>GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
--“username”替换为将要授权的用户名,比如clientusr;“password”替换为clientusr设置的密码;
为使test用户能被除本机外的电脑客户端访问,可使用一下语句:
mysql>GRANT USAGE ON *.* TO 'test'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
4、用户授权
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON DB.* TO 'username'@'localhost' IDENTIFIED BY 'password’;
--“DB”替换为授权访问的数据库名;"username"是步骤2授权用户名;"password"是步骤2授权用户的设置密码
下面的语句为全部功能授权给 test 用户:
mysql> Grant all privileges on *.* to 'test'@'%' identified by '123456' with grant option;
5、刷新使用户生效
mysql>FLUSH PRIVILEGES;