1、修改密码
修改密码: vim /etc/my.cnf 的mysqld字段加入skip-grant-tables 重启MySQL,service mysqld restart 终端输入 mysql 直接登录MySQL数据库,然后
use mysql update mysql.user set authentication_string=password('123@wanyun') where user='root';
update mysql.user set password_expired='N' where user='root'; 编辑my.cnf文件删掉skip-grant-tables 这一行,然后重启MySQL
2、无论做什么该密码的操作,使用数据库时总是报错。
安装完mysql 之后,登陆以后,不管运行任何命令,总是提示这个
step 1: SET PASSWORD = PASSWORD('123@wanyun');
step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
step 3: flush privileges;
完成以上三步退出再登,使用新设置的密码就行了,以上除了红色的自己修改成新密码外,其他原样输入即可。
3、报错分析
1)在shell终端输入加入-e输入命令时报错:
解决方法:添加一个参数--connect-expired-password
2)使用zabbix自带模板对mysql进行监控时,发现mysql5.6以上版本在使用mysqladmin时会发出警告:“Warning: Using a password on the command line interface can be insecure.” 。这样zabbix服务端获取数值的时候,会带有该字符串,导致报错。
解决方法:
将mysqladmin的警告信息重定向到/dev/null,忽略掉告警信息。
/usr/bin/mysqladmin -u$MYSQL_USER -h$MYSQL_HOST -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status 2>/dev/null|grep -w "Com_select"|cut -d"|" -f3`
在原有命令中加上2>/dev/null 就行了。