MySQL 错误代码 1045

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 错误代码 1045相关的知识,希望对你有一定的参考价值。

这个问题如何解决,

我购买的虚拟主机,但是没有赠送我mysql

我自己上传的MySQL 可以出现这种提示

phpMyAdmin 出无法加载 mcrypt 扩展,请检查您的 PHP 配置。

刚安装好DZ7.0但是说要什么mcrypt数据,我就搜索半天安装了一个,然后进主页就出这提示

Discuz! info: Can not connect to MySQL server

Time: 2009-7-31 10:39pm
Script: /index.php

Error: Access denied for user 'adminyy'@'127.0.0.1' (using password: YES)
Errno.: 1045

Similar error report has been dispatched to administrator before.

DZ告诉我的是用户名和密码错误。
楼上的啊,我是虚拟主机啊, 你告诉我,如何进windows,我愁啊,

还有啊,Error: Access denied for user 'adminyy'@'127.0.0.1' (using password: YES) 我的这段错误提示代码 ID:adminyy后面为啥是跟的本机IP 啊, 127.0.0.1

错误代码 1045
Access denied for user 'root'@'localhost' (using password:YES)

解决办法是重新设置root用户密码,在Windows平台下操作步骤如下:
1、以系统管理员身份登录到系统;
2、如果MySQL服务器正在运行,停止它。
如果是作为Windows服务运行的服务器,进入服务管理器:开始菜单->控制面板->管理工具->服务
如果服务器不是作为服务而运行的,可能需要使用任务管理器来强制停止它。
3、创建1个文本文件,并将下述命令置于单一行中:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
用任意名称保存该文件。在本例中,该文件为C:\mysql-init.txt。
4、进入DOS命令提示:开始菜单->运行-> cmd
假定你已将MySQL安装到C:\mysql。如果你将MySQL安装到了另一位置,请对下述命令进行相应的调整。
在DOS命令提示符下,执行命令:
C:\> C:\mysql\bin\mysqld-nt --init-file=C:\mysql-init.txt
在服务器启动时,执行由“--init-file”选项(作用:在启动时从指定的文件中读取SQL命令)命名的文件的内容,更改根用户密码。当服务器成功启动后,应删除C:\mysql-init.txt。
5、停止MySQL服务器,然后在正常模式下重启它。如果以服务方式运行服务器,应从Windows服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。
应能使用新密码进行连接。
参考技术A 可能是密码错误,或者用户忘记密码

mysql> CREATE USER 'nonexistant'@'%' IDENTIFIED BY '123456';Query OK, 0 rows affected (0.00 sec)

修复:检查和/或重置密码:您无法从 MySQL 以纯文本格式读取用户密码,因为密码哈希用于身份验证,但您可以将哈希字符串与“PASSWORD”函数进行比较。
我们可以看到 PASSWORD('forgotten')哈希与 authentication_string 列不匹配,这意味着 password string ='forgotten' 不是正确的登录密码。如果您需要覆盖密码,可以执行以下查询:
mysql> set password for 'nonexistant'@'%' = 'hello$!world';Empty set (0.00 sec)
参考技术B 1. 管理员登陆系统,停止mysql服务或者结束mysqld-nt进程
2. 进入命令行,来到mysql的安装目录.假设安装目录为 d:\mysql\ , CMD进入命令行
3. 运行 d:\mysql\bin\mysqld-nt --skip-grant-tables 启动mysql,关闭权限的检查
4. 运行 d:\mysql\bin\mysqladmin -u root flush-privileges password "newpassword" 重设root密码
5. 重新启动mysql服务
参考技术C MYSQL远程登录要注意一个细节,熟悉windows的人容易走入迷途:
MYSQL对于每个登录位置都是用一条记录来定义权限,而且允许一个用户有多个记录及多个密码,特别缺省第一次定义密码ROOT,容易跟LINUX的ROOT密码混淆,设置好密码后以为密码就是这个了,不知道MYSQL需要为不同的接入点定义不同的记录,而记录本省可以是同一个账户,不同的密码,所以会有这种记录
root 127.0.0.1 password:123
root 192.168.0.0 password:456
对这个定义清楚了,就可以用授权命令定义新连接了:
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"192.168.0.8" identified by "123";

mysql 1248错误问题解决

参考技术A

mysql 1248错误,是代码错误造成的,解决方法如下:

1、首先略过权限,在mysql配置文件(linux-->my.cnf) [mysqld] 下加入 skip-grant-tables ,即不用密码也可登录,如图。

2、然后重启mysql。

3、接着重置密码和刷新权限表。

4、然后在 mysql 配置文件中注释skip-grant-tables。

5、最后重启mysql,问题就解决了。

以上是关于MySQL 错误代码 1045的主要内容,如果未能解决你的问题,请参考以下文章

mysql错误代码1045不能登录的原因与解决方法

MySql 错误代码 1045

MySql错误代码1045的解决方案

Windows下MySql错误代码1045的解决方法

mysql 1248错误问题解决

sqlyog错误代码1045