MySQL安全機制
- MySQL的權限表
mysql.user Global level
mysql.db Database level
mysql.tables_priv Table level
mysql.columns_priv Column level
1,登錄和退出MySQL
2,創建用戶
語法1:創建賬號
create user 用戶名@主機名 identified by 密碼;
如:create user user1@‘localhost’ identified by ‘123456’
語法2:創建賬號並授權
grant all on 庫.表 to ‘用戶名’@‘主機名或ip’ identified by 密碼
如:grant all on *.* to ‘user1’@‘localhost’ identified by ‘123456’
3,修改密碼
- root修改root密碼
語法一:在控制檯 mysqladmin -uroot -p’舊密碼’ password ‘新密碼’
語法二:uodate mysql.user set authentication_string=password(‘new_password’) where user=‘root’ and host=‘localhost’;
flush privileges;
語法三:set password=password(‘new_password’); - root修改其他用戶密碼
語法一:set password for ‘用戶名’@‘主機名’ =password(‘new_password’);
語法二:update mysql.user set authentication_string=password(‘new_password’) where user=‘用戶名’ and host=‘localhost‘;
flush privileges; - 普通用戶修改自己密碼
set password =password(‘new_password’);
4,忘記root密碼
5,mysql權限管理
mysql 日誌管理
error.log 錯誤日誌 排錯 /var/log/mysqld.log默認開啓
bin log 二進制日誌 備份 增量備份 DDL DML DCL
relay log 中繼日誌 複製 接收 replication master
slow log 慢查詢日誌 調優 查詢時間超過指定值
注:
重啓mysql 會截斷binlog,
mysql控制檯 輸入 flush logs 會截斷binlog,
mysql控制檯 輸入 reset master 會刪除所有的binlog
binlog記錄數據庫的更改,它能恢復數據。
如果要刪除:
purge binary logs to ‘mysql-bin.010’;
purge binary logs before ‘2016-04-02 22:46:26’;
暫停記錄,僅當前會話
set SQL_LOG_BIN=0 //暫停
set SQL_LOG_BIN=1 //恢復
截取binlog
mysqlbinlog mysql.000002 --start-position=260
mysqlbinlog mysql.000002 --stop-position=260
mysqlbinlog mysql.000002 --start-position=260 --stop-position=930
截取日誌