Linux Mysql數據庫安全配置html
目錄:mysql
1.修改mysql管理員帳號root的密碼(2種方法)sql
2.修改mysql管理員帳號rootshell
3.mysql管理員root帳號密碼遺忘解決辦法(2種方法)數據庫
4.建立數據庫用戶(3種方法)安全
5.mysql數據庫權限管理網絡
本地權限ide
網絡權限學習
撤銷權限測試
刪除用戶
1、修改mysql管理員帳號root的密碼
方法一:shell命令
mysqladmin -u root -p password "123"
2.查看密碼存放的表
方法二:mysql數據庫命令
mysql>use mysql;
mysql>update user set password=password('123') where user='root' and host='localhost';
mysql> FLUSH PRIVILEGES; #刷新
測試密碼修改是否成功
2、修改mysql管理員帳號root
update mysql.user set user="admin" where user="root" and host="localhost";
flush privileges;
測試
3、mysql管理員root帳號密碼遺忘
方法一:
killall -TERM mysqld
mysqld_safe --skip-grant-tables &
mysql -u admin
mysql>update user set password=password('123456') where user='admin' and host='localhost';
mysql> FLUSH PRIVILEGES;
MySQL> quit
從新啓動MySQL,使用新密碼登陸
設置新的密碼,並刷新修改
測試,重啓mysqld服務用新的密碼登陸
方法二:
修改/etc/my.cnf
在[Mysqld]下添加:
skip-grant-tables
重啓MySQL服務
mysql -u root
mysql>update user set password=password('123') where user='admin' and host='localhost';
mysql> FLUSH PRIVILEGES;
MySQL> quit
修改/etc/my.cnf 刪除skip-grant-tables
從新啓動MySQL,使用新密碼登陸
測試
修改/etc/my.cnf 刪除skip-grant-tables
從新啓動MySQL,使用新密碼登陸
4、建立數據庫用戶
方法一:
INSERT INTO user(host, user, password, select_priv, insert_priv, update_priv) VALUES ('localhost', 'yuzly', PASSWORD('yuzly'), 'Y', 'Y', 'Y');
方法二:
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'yuzly';
方法三:經過新用戶受權建立數據庫用戶
5、權限管理
本地權限
1.建立一個zhang用戶,只給select權限,而後查看權限
2.登陸zhang用戶,mysql -uzhang -pyuzly測試,建立一個表,下圖顯示被拒絕,當前帳戶沒有create權限
3.登陸管理員帳戶,給zhangsan帳戶添加create權限
4.從新登陸zhangsan帳戶,測試是否具備create權限,下圖說明具備create權限
5.插入一條數據,下圖提示沒有insert權限
6.登陸管理員帳戶,給zhangsan帳戶添加insert權限
7.從新登陸zhangsan帳戶,測試是否具備insert權限,下圖說明具備insert權限
8.建立的新用戶,默認沒有任何權限,下圖能夠看到建立的用戶默認是沒有任何權限的
9.登陸新建立的用戶mysql -uabcd -pyuzly,測試,下圖能夠看到abcd沒有select等權限,用show只能查看mysql系統自帶的東西,別的用戶建立的數據庫等看不到
遠程鏈接權限
1.建立一個帳戶,賦予遠程登陸權限
grant all on userdb.* to 'abc'@'10.10.10.200' identified by 'yuzly';
flush privileges;
2.測試,從另外一臺Linux的Mysql客戶端登陸驗證
3.下圖能夠看到,abc用戶對userdb數據庫具備任何權限,但對別的數據庫沒有任何權限,例如mysql.user
4.遠程鏈接限制一個網段
5.測試
撤銷權限
revoke all on userdb.* from 'zhangsan'@'localhost';
測試,撤消zhangsan帳戶的權限是否生效
刪除帳戶
delete from mysql.user where user="aaa" and host="localhost";
---------------------------------------------------------------------------------------------------
Mysql數據庫基礎學習筆記:https://www.cnblogs.com/yuzly/p/10582295.html
原文出處:https://www.cnblogs.com/yuzly/p/10583808.html