MySQL无法登录怎么办 mysql数据库登录不上
mysql错误代码1045不能登录的原因与解决方法
错误如下:1045 Access denied for user 'root'@'localhost' (using password:YES)
成都创新互联公司专注于合水网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供合水营销型网站建设,合水网站制作、合水网页设计、合水网站官网定制、成都小程序开发服务,打造合水网络公司原创品牌,更为您提供合水网站排名全网营销落地服务。
想起来有可是在navicat添加的root@'%'用户,可能密码和现在新版本5.7的加密不同了,导致密码不对.
所以解决方法是更新用户密码.
注意5.7版本密码保存的列是 authentication_string ,密码要用函数password加密.
更新密码的SQL是 update user set authentication_string=password('密码') where user="root";
下面是Windows平台下操作步骤:
配置文件my.ini ,在mysqld下面添加skip-grant-tables,意思是可以直接回车登录,保存退出。重启mySQL,然后运行cmd
输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入。
1.切换到mysql数据库:use mysql;
2.给root用户设置新密码,
mysql update user set authentication_string=password('密码') where user="root";
3.刷新数据库mysql flush privileges;
4.再修改my.ini,把刚加入的"skip-grant-tables"这行删除或者添加#注释,保存退出再重启mysql服务就可以了。
一些参考命令
#删除之前配置 drop user 'root' @ '%' ;
#配置远程登录 CREATE USER 'root' @ '%' IDENTIFIED BY password( '你的密码') ;
#授权 GRANT ALL ON *.* TO 'root' @ '%' ;
#更新权限 flush privileges;
#查看用户,主机,加密方法 select user,host,plugin from user;
phpmyadmin登陆出现无法登陆MySQL
phpmyadmin登陆出现无法登录MySQL是设置错误造成的,解决方法为:
1、首先打开运行命令窗口,可以通过按住windows键+R的组合键来实现,输入cmd,然后按下回车键。
2、这样就进入了doc的命令窗口。
3、切换到我们安装mysql的盘符。
4、然后再切换到mysql的bin目录。
5、输入mysql -uroot -p。
6、提示输入密码。
7、输入mysql密码之后,然后按下回车键,出现welcome的字样表示登陆成功。
mysql突然登录不了?
1 进入cmd,停止mysql服务:Net stop mysql
若是停不掉:Ctrl+Alt+Del打开任务管理器,在详细信息里结束mysql.exe任务。
若服务名无效:来到MySQL的安装路径下bin,在命令行中输入mysqld --install;成功:出现Service successfully install代表你已经安装成功;
2 进入bin目录
mysqld -nt --skip-grant-tables
重新打开一个管理员命令提示符输入mysql进入重新改密码就OK了。
再次mysql -u root -p进入操作
mysqlupdate mysql.user set anthentication_string=password(‘你的密码’) where user=‘root’;
mysqlflush privileges;//刷新MySQL的系统权限
mysqlquit;
再次mysql -u root -p进入就可以操作了。
如果mysql密码登陆不了怎么办?
MySQL有时候忘记了root密码是一件伤感的事。这里提供Windows 和 Linux 下的密码重置方法。
Windows:
1.以系统管理员身份登陆系统。
2.打开cmd-----net start 查看mysql是否启动。启动的话就停止net stop mysql.
3.我的mysql安装在d:\usr\local\mysql4\bin下。
4.跳过权限检查启动mysql.
d:\usr\local\mysql\bin\mysqld-nt --skip-grant-tables
5.重新打开cmd。进到d:\usr\local\mysql4\bin下:
d:\usr\local\mysql\bin\mysqladmin -u root flush-privileges password "newpassword"
d:\usr\local\mysql\bin\mysqladmin -u root -p shutdown 这句提示你重新输密码。
6.在cmd里net start mysql
7.搞定了。
Linux:
MySQL root密码的恢复方法之一
如果忘记了MySQL root密码,可以用以下方法重新设置:
1.KILL掉系统里的MySQL进程;
killall -TERM MySQLd
2.用以下命令启动MySQL,以不检查权限的方式启动;
safe_MySQLd --skip-grant-tables
3.然后用空密码方式使用root用户登录 MySQL;
MySQL -u root
4.修改root用户的密码;
MySQL update MySQL.user set password=PASSWORD('新密码') where User='root';
MySQL flush privileges;
MySQL quit
重新启动MySQL,就可以使用新密码登录了。
mysql root用户不能登录怎么解决?
MySQL提供跳过访问控制的命令行参数,通过在命令行以此命令启动MySQL服务器:\x0d\x0asafe_mysqld --skip-grant-tables\x0d\x0a即可跳过MySQL的访问控制,任何人都可以在控制台以管理员的身份进入MySQL数据库。\x0d\x0a需要注意的是在修改完密码以后要把MySQL服务器停掉重新启动才会生效\x0d\x0a先找到mysql.server 然后停止mysql服务\x0d\x0a# mysqld_safe --skip-grant-tables --skip-networking \x0d\x0a# mysql\x0d\x0ause mysql;\x0d\x0aupdate user set password=PASSWORD("new-password") where user="root";\x0d\x0aflush privileges;
MySQL密码正确却无法本地登录怎么办
MySQL root密码正确,却怎么也无法从本地登录MySQL,提示
1 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
这里后来经高人指点才发现mysql库中的user表缺少一个root指向host:localhost的数据项,只有一个root指向host:主机名的数据项,故怎么也无法利用root账户登录MySQL。
总结一点就是root账户缺失了访问localhost主机的账户信息,导致无法本地登录。
那有什么办法恢复root登录呢?
这里记录一下今天遇到的纠结事情:
首先kill掉MySQL进程然后在启动mysql的参数中加入
--skip-grant-tables
会发现这时无密码就可以登录mysql了。
当然我们还必须修复root账户丢失的数据项。
这里有两种解决方案:
第一种是因为root账户初始的时候有3条记录,包含root对应localhost,hostname,127.0.0.1三条账户数据,我们可以update host为其他两项中一项为localhost即可。
第二种是直接insert一条记录,host为localhost即可
总结一下:即使root的host包含了主机名,127.0.0.1那么依然是无法正常登录的,这里必须要有localhost的host才行。
如果上面办法还是无法正常登录我们可尝试另一种办法
在本地用mysql命令直接回车可以进入mysql,但是里面只有test和information_schema数据库,没有mysql等数据库,使用use mysql报如下错:
mysql use mysql
ERROR 1044 (42000): Access denied for user "@'localhost' to database 'mysql'
意思是说没有指定user,没有权限访问数据库mysql。
那么用root登录呢,输入正确的密码报如下错:
[root@228827 ~]# mysql -uroot -p123456
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
密码正确的情况下,mysql数据库已经禁止了root用户在本地的登录权限了
分享名称:MySQL无法登录怎么办 mysql数据库登录不上
分享网址:http://cdiso.cn/article/hjssgg.html