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
截取日志