1.关闭MYSQL数据库
service mysql stop
2.进入安全模式
mysqld_safe --skip-grant-tables
mysqld_safe --skip-grant-tables --skip-networking (下面这一句同时禁止远程访问)
3.登录MYSQL(用另一个命令行登录)
mysql -p 直接回车
4.修改MYSQL密码:如果MYSQL5.6则参考《RPM方式安装MySQL5.6》修改
update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';
flush privileges;
quit;
5.关闭安全模式的命令行
6.重启MYSQL并登录
service mysql restart
mysql -uroot -p
7.输入任何MYSQL命令如果出现以下错误:
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
则用以下命令进行再次修改密码
SET PASSWORD = PASSWORD('123456');
8.完成密码修改正常使用
9.配置远程登录
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;
quit;
10.如查启用了防火墙则打开3306端口:
/etc/sysconfig/iptables文件中加入以下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
重启防火墙后便可远程访问
service iptables restart;