mysqladmin -h hostname flush-privileges
use mysqlupdate 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的扩展除外),问题就在这了。
方法/步骤1
1.管理工具---服务里面停止MySQL服务。(在运行里输入”services.msc”,回车)
2
2.控制面板---卸载Mysql,删除C:\Program Files\MySQL目录
3
3.这是最关键一步,只做前面两步,密码还是修改不了,因为MySQL 还有文件,也就是在C:\Documents and Settings\All Users\Application Data里面的MySQL文件夹(或者删除C:\Documents and Settings\All Users下的Application Data)。
这个文件没有清除是MySQL重装出现旧密码的根源所在,于是删除MySQL文件夹
4
4.检查C:\WINDOWS目录下是否有my.ini文件,将其删
5
5.注册表里的HEKY_LOCAL_MACHINE,SOFTWARE,MYSQL删除(在运行里输入”regedit”,回车)
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 目录删除完成以上步骤,就可以重新安装MySQL并且进行全新配置了(注意是全新配置)
END
注意事项
这个问题是因为你的机器上之前安装过mysql,或者这 一次安装配置了新密码,进入应用的最后一步时候由于某些原因卡出了或者由于服务未启动等原因导致无法配置成功,最终结果是,配置未成功,密码设置已经保存 进去了。这样我们调整好了服务等原因后,进行重新配置的时候,会发现在设置密码的时候,多了一个旧密码输入框。其实这也没什么,在密码知道的情况下,输入 旧密码重新设置密码并不难,而问题关键在于即使旧密码正确,你依旧无法完成配置,在最后一个环节密码认证的时候又出错了,出错原因是密码问题,提示旧密码 不对。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)