linux下安装mysql默认root无法登陆问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下安装mysql默认root无法登陆问题相关的知识,希望对你有一定的参考价值。

问题:


[[email protected] mysql]# mysql -u root -p
Enter password: 
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)

 

解决方法:
方法一: 
# /etc/init.d/mysql stop 
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 
# mysql -u root mysql 
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 
# /etc/init.d/mysql restart 
# mysql -uroot -p 
Enter password: <输入新设的密码newpassword> 
mysql> 

 


方法二: 
直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码: 
# mysql -udebian-sys-maint -p 
Enter password: <输入[client]节的密码> 
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 
# mysql -uroot -p 
Enter password: <输入新设的密码newpassword> 
mysql>

上面方法执行完毕后,登录mysql还需要设置密码,否则无法进行其他操作,提示需设置密码
set password=password(‘weixiao‘);

mysql安装好以后在linux下的目录
      1、数据库目录
  /var/lib/mysql/

  2、配置文件
  /usr/share/mysql(mysql.server命令及配置文件)

  3、相关命令
  /usr/bin(mysqladmin mysqldump等命令)

  4、启动脚本
  /etc/init.d/mysql   start|stop|restart|status(启动脚本文件mysql的目录)

 

linux安装好服务后,开放端口命令:

/sbin/iptables -I INPUT -p tcp --dport 9090 -j ACCEPT; (区分大小写)

然后输入以下命令查看端口:

/etc/init.d/iptables status

最后还需要保存并重启防火墙

/etc/rc.d/init.d/iptables save (保存)

service iptables restart (重启)

一切ok,可以远程访问了

********************************************************

当用mysql工具远程访问的时候会报这个错:

Host  is not allowed to connect to this MySQL server

这是因为没有授权,如果你想从任何主机连接到mysql服务器的话。

grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘weixiao‘ with grant option;

如果你想只允许用户从固定ip的主机连接到mysql服务器的话。

grant all privileges on *.* to ‘root‘@‘170.12.12.155‘ identified by ‘weixiao‘ with grant option;

以上是关于linux下安装mysql默认root无法登陆问题的主要内容,如果未能解决你的问题,请参考以下文章

linux开机登陆直接默认为root用户登陆。怎么设置

linux 下解决mysql root 权限无法远程连接问题

Linux 下安装 MySQL 后给 root 用户设置密码

Linux安装完mysql后提示错误无法登陆mysql怎么办

Mysql不知道默认密码情况下登录

ubuntu下 mysql安装以后无法登陆的的解决方法((ERROR 1698 (28000): Access denied for user 'root'@'localhos