mysql远程登录root账户报错1045的解决(mysql远程登录不上)真没想到

随心笔谈3年前发布 admin
224 0 0

文章摘要

这篇文章主要介绍了在MySQL默认情况下无法远程登录到`root`用户的1045错误问题。文章指出,1045错误并非由于密码错误,而是由于MySQL不允许远程访问默认`root`账户。解决方法包括通过修改`my.ini`文件授予`root`用户权限,并使用命令`GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;`和`FLUSH PRIVILEGES;`来授权和重置权限。 文章还详细介绍了在Windows环境下解决1045错误的具体步骤,包括修改`my.ini`文件中的`mysqld`关键字以跳过授权表,修改`root`用户的密码等。此外,文章提醒用户在修改密码时需注意安全,避免在服务器上留下风险,并提供了具体的命令示例供参考。



目录mysql远程登录root账户报错1045错误提示:1045-Access denied for user‘root‘ ‘localhost‘(using password: YES)总结

默认情况下mysql不允许远程登录到root用户,远程登录报错1045容易造成密码错误的错觉。

要实现的话需要另外授权。

本地登录到mysql的root用户,再输入如下命令即可(中间的*号为密码):

GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘******’ WITH GRANT OPTION;
FLUSH PRIVILEGES;

navicat连接MySQL数据时遇到1045错误,一般是因为输入的用户名或者密码错误被拒绝访问,此时可以重置MySQL数据库的密码解决。

在windows的操作步骤如下:

1、找到mysql的my.ini文件,在mysqld关键字下面添加skip-grant-tables,如下图所示:

该命令作用是跳过授权表,也就是输入任意字符账号密码都可以进入mysql看到所有数据表。

当忘记账号密码时可以使用改命令修改密码,但是要随用随关,重启mysql,不然服务器上会有很大的风险。

2、重启MySQL服务

3、在命令提示符(cmd)中输入mysql -u root mysql

4、修改密码

在命令提示符(cmd)中输入:

update user set password=password(“root123″) where user=”root”;如果有报错“ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’”那么就输入:update user set authentication_string=password(‘root22′) where user=’root’;输入exit退出,再重新连接数据,即可连接成功。

注意:

1、要是找不到my.ini文件位置,可打开服务管理器中找到MySQL服务,右键属性,在“可执行文件的路径”中看到my.ini的位置。如果安装时是默认的安装路径,那么一般是在”C:\ProgramData\MySQL\MySQL Server 5.7″文件夹中,这里需要注意的是,有可能”ProgramData”文件夹会被隐藏。

2、要把mysql的安装路径下的bin目录配置到环境变量中,否则会提示”命令行输入mysql -u -root -mysql显示不是内部或外部命令也不是可运行的程序”。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:全面分析MySQL?ERROR?1045出现的原因及解决mysql ERROR 1045 (28000)问题的解决方法解决mysql:ERROR 1045 (28000): Access denied for user ”root”@”localhost” (using password: NO/YES)MySQL忘记root密码错误号码1045的解决办法

© 版权声明

相关文章