日期:2014-05-16  浏览次数:20886 次

mysql问题处理

MySQL安装1045错解决办法(绝对经典)

2010年01月19日

  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服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。

  应能使用新密码进行连接。

  昨天重做系统后打算装上MySQL,NEXT->NEXT-> 正兴奋着呢,晕~~~~不能装了,1045错,"小人得志"啊

  找百度帮忙,查了1045错半天,网上一查说是密码或者用户权限的问题,可是我一直在想我用的是root的用户啊。应该不存在权限的问题啊。又有帖子说是密码的问题,难道跟以前我用的时候的密码有关系??折腾,继续折腾~~可就是过不去。。。。。没辙,卸了再装,再卸再装,还是老样子,最后的关键时刻出错,倒!!!无奈之极,不报希望的去了google,一哥们说的跟我一样的情况,"mysql5的默认root的密码是空的",于是重装,不设置密码,直接跳过,NEXT->NEXT->finish。试试看,不输入密码,狂抓啊~~~进去了,使用一切正常

  无法启动mysql服务,进程意外终止,1067错误

  在mysql的主目录下my.ini文件中添加

  [WinMySQLServer]

  server=c:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt.exe

  CMD下运行:

  c:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt.exe remove

  c:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt.exe install

  net mysql start

  今天因为项目需要在本地装了mysql5.1的数据库,想不到在最后一步死活过去。出现的错误代码为1045,网上一查说是密码或者用户权限的问题,可是我一直在想我用的是root的用户啊。应该不存在权限的问题啊。估计是密码的问题,我本来把初始密码改成:mysql了。可是就是过不去。。。。。

  后来知道了原因是,mysql5的默认root的密码是空的。白忙了一场。。

  #1045 - Access denied for user 'root'@'localhost' (using password: NO)

  解决办法:

  mysqladmin -h hostname flush-privileges

  use mysql; update user set password =password('yourpass') where user='root'

  出现无法连接数据库的话,命令行用root用户登陆,敲下面命令:

  SET PASSWORD FOR sns@'localhost'=OLD_PASSWORD('sns');

  然后刷新mysql权限

  FLUSH PRIVILEGES;

  导入数据的方法 mysql -u name -p --default-character-set=utf8 databasename < path\*.sql

  create database name character set utf8;

  如果出现#1251 - Client does not support authentication protocol requested by server;的错误:

  解决办法:先用root登录MYSQL服务器,执行

  mysql>set password for user1@"localhost"=old_password('yourPassword');

  原因是因为你使用的mysql服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password();,这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MYSQL客户端都是3.23的(当然,mysqli的扩展除外),问题就在这了

  MYSQL1067错误这里看

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

  1

  安装MYSQL后更改了ROOT的密码后用

  net startmysql

  启动时我就遇到了这样的问题.使用以下命令后

  c:\mysql\bin\mysqladmin-u root -p shutdown

  再net start mysql就没有这个错误提示了!

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

  2

  MySQL的1067错误

  Q:我的Mysql碰到了 1067 错误

  错误信息为:

  A system error has occurred.

  System error 1067 has occurred.

  The process terminated unexpectedly.

  A:在我的机上的解决办法是:

  修改%windir%\my.ini,增加

  [mysqld]

  #设置basedir指向mysql的安装路径

  basedir=D:\Program\Tools\mysql

  datadir=D:\Program\Tools\mysql\data

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

  3

  已经弄好了!!!

  好像是这样……

  mysql_install_db脚本只是在初次安装时才需要运行一次,之后就不用再运行了,不知道是不是这么回事.我把mysql.server拷贝至 /etc/rc.d/init.d/中,运行chkconfig mysql.server,至此mysql服务器每次开机自动启动,只要设置好PATH,在命令行上输入mysql就一切搞定!

  看来摸索的过程实在是痛苦啊,这已经折磨我好几天了……

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

  4

  问:我的Mysql碰到了 1067 错误

  错误信息为:

  A system error has occurred.

  System error 1067 has occurred.

  The process terminated unexpectedly.

  答:

  解决办法:

  1.检查你的Mysql目录有没有给系统的