測試環境本來應該是有測試人員維護的,這個無可厚非。但是有時候開發小哥哥會直接在測試環境發了數據庫腳本然后沒有告訴我們測試妹子導致我們測試妹子花費了很長時間去定位問題。所以現在測試妹子要把測試環境的數據庫權限收掉數據庫中管理員權限設置,那么怎么做呢?
下面告訴大家:由于測試環境的數據庫權限的root賬號密碼在開發代碼中要進行讀寫操作的,所以不能改數據庫的密碼數據庫中管理員權限設置,那就只剩下限制root的用戶使用情況啦呀,
命令:
1.使用管理員root登錄數據庫
2.切換到數據庫mysql
use mysql;

3.查看user表信息
???????select host,user from mysql.user;
FLUSH PRIVILEGES;
4.刪除root的所有權限

delete from user where Host='%' and User='root';
FLUSH PRIVILEGES;
5.給某用戶新增root權限
INSERT INTO `user`(`Host`, `User`, `Password`, `Select_priv`, `Insert_priv`, `Update_priv`, `Delete_priv`, `Create_priv`, `Drop_priv`, `Reload_priv`, `Shutdown_priv`, `Process_priv`, `File_priv`, `Grant_priv`, `References_priv`, `Index_priv`, `Alter_priv`, `Show_db_priv`, `Super_priv`, `Create_tmp_table_priv`, `Lock_tables_priv`, `Execute_priv`, `Repl_slave_priv`, `Repl_client_priv`, `Create_view_priv`, `Show_view_priv`, `Create_routine_priv`, `Alter_routine_priv`, `Create_user_priv`, `Event_priv`, `Trigger_priv`, `Create_tablespace_priv`, `ssl_type`, `ssl_cipher`, `x509_issuer`, `x509_subject`, `max_questions`, `max_updates`, `max_connections`, `max_user_connections`, `plugin`, `authentication_string`, `password_expired`) VALUES ('1用戶IP', 'root', '加密密碼', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0, 0, 0, 0, 'mysql_native_password', '', 'N');

FLUSH PRIVILEGES;
6.新建用戶XX并賦予權限select
create user '用戶名'@'%'identified by '密碼';
grant select on database.* to 用戶名;

FLUSH PRIVILEGES;
7.給XX用戶新增某個表的增刪改查權限
grant select, insert, update, delete on 數據庫.表名 to 用戶名@'%';
FLUSH PRIVILEGES;

8.更改密碼
update user set password = password('新密碼') where user ='用戶名';
FLUSH PRIVILEGES;
?