Mysql 遇到的几个问题
原创
©著作权归作者所有:来自51CTO博客作者盼君帮你做作业的原创作品,请联系作者获取转载授权,否则将追究法律责任
1. 怎么查询mysql 所在的日志路径
1) 采用SQL 语句查询
mysql 日志文件路径设置
SHOW VARIABLES LIKE 'general_log_file';日志文件路径
SHOW VARIABLES LIKE 'log_error';错误日志文件路径
SHOW VARIABLES LIKE 'slow_query_log_file';慢查询日志文件路径
2) 查看 my.cnf 中的配置(以下为部分配置信息)
#MySQL服务端日志
log-error=/home/ppp/logs/mysql/mysqld.log
#binlog配置开始
#MySQL的binlog保存路径以及文件名格式
log_bin=/home/ppp/share/mysql/binlog/mysql-bin.log
#slave log设置
relay-log=relay-log.log
#记录SQL执行超过一定时间的日志
slow_query_log=1
#慢查询时间
long_query_time = 6
#慢查询日志路径
slow_query_log_file=/home/seemmo/logs/mysql/slow.log
二、 给mysql 创建用户并设置有效期
在5.7 以前的版本, 不能直接设置有效期,在之后的版本,可以给每个用户设置单独的密码到期时间
delete_mysql_user(){
mysql -h$host -uroot -p$root_passwd -P$port << EOF
use mysql;
delete from user where User="$user";
flush privileges;
quit
EOF
}
create_mysql_user(){
mysql -h$host -uroot -p$root_passwd -P$port << EOF
use mysql;
GRANT ALL PRIVILEGES ON *.* TO '$user'@'%' IDENTIFIED BY '$passwd' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO '$user'@'localhost' IDENTIFIED BY '$passwd' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO '$user'@'127.0.0.1' IDENTIFIED BY '$passwd' WITH GRANT OPTION;
flush privileges;
quit
EOF
}
除了定义默认的密码过期策略,也可以为指定账号定义自定义过期策略,如下:
设置密码永不过期:
ALTER USER ‘root’@’localhost’ PASSWORD EXPIRE NEVER;
设置密码立即过期:
ALTER USER ‘root’@’localhost’ PASSWORD EXPIRE;
设置密码自定义过期天数:
CREATE USER ‘root’@’localhost’ PASSWORD EXPIRE INTERVAL 90 DAY;
ALTER USER ‘root’@’localhost’ PASSWORD EXPIRE INTERVAL 90 DAY;
三、java 可以用命令的方式来执行以上sql 语句