windows server 2003安装mysql5异常后的解决过程
适合级别 :入门,中级
关键字 : mysql,mysql安装,windows server 2003,root密码
说明 :本文所述问题不一定经常遇到,笔者重在分享解决问题的过程。
1 问题描述
为了全面地构建开发环境,除了IDE和server等之外,也打算在windows server 2003(EE sp2)上安装mysql(5.5.9-win32)。
安装过程看似顺利,一路下一步,但在安装好配置mysql实例时,最后一步老是报错 ,原因是我在配置过程中要求设置root密码,但最后一步“安全设置”的时候总是认为root密码不对因为权限不足(不管我是留空还是如何)。
反复尝试过“不设置root密码”,“设置root密码时留空” 和 “设置一个自定义的root密码”,最后还是一样,总是报同样的错。期间ping过localhost,127.0.0.1,telnet过localhost的3306,重新mysql service等。
同时也怀疑过是不是mysql安装包区分xp和2003系统等,因为这个安装包同事在xp上安装是OK的。
甚至还怀疑过使用的mysql客户端工具有问题,因为主要是用它来验证是否能root登录数据库的;所以我还自己写python脚本去连接mysql,事实证明确实是root密码不对。[关于windows上python访问mysql请参看另外的文章: http://nodex.iyunv.com/blog/1070281]
最后采用绝招:卸载重新安装,关闭防火墙和杀毒软件等; 结果还是一样,多次重新配置也一样,而且还衍生出许多额外的麻烦,比如windows 的mysql service在卸载程序时有时不能自动删除等。
至此,有点郁闷;本来是跟另一个哥们儿两人在结对的,搞了半天的mysql安装最后 。。。遂搁置;我开始在被人的机器上coding,下午重新开始解决此问题。
2 重新开始解决
- 先查找如何手动删除windows服务,不然每次卸载和重装mysql都得改名字,还遗留一些不用的服务;最方便的方法就一句话:
cmd> sc delete mysql
- 重新使用ping和telnet确认mysql在正常运行: OK的!
- re-config mysql,勾选“允许匿名访问mysql” ; 之后匿名访问mysql,OK的,确实看到了information_schema和test两个默认库!
- 至此,精确定位为 root密码设置 的问题! 也就是说,看起来配置mysql实例的时候root用户是肯定创建了,但是密码并没有设置为我们输入的那个,不知道默认是什么 。。。肯定不是空。
- 所以,选择强制修改mysql root用户密码的方法来解决此问题! - 这个其实也很简单,基本思路就是先STOP MYSQL 服务,然后在cmd命令行带上特定选项启动MYSQL,以忽略权限验证,如下:
MYSQL_HOME> mysqld.exe --skip-grant-tables
这时的mysql是不需要验证权限即可访问的,所以我们另打开一个cmd,进入mysql命令行:
mysql>use mysql;
mysql>select user,password from user where user='root';
mysql>update user set password = password('newpassword') where user='root';
mysql>flush privileges;
mysql>exit
然后也STOP另一个CMD里手动启动的MYSQL服务,如果ctrl+c或关闭窗口后mysqld进程还在,一定要强制结束,确保MYSQL停止。
在WINDOWS服务里启动MYSQL服务,再次用root登录mysql,一切OK !
3 虽然是个小麻烦,但不同的解决思路和过程所花费的时间和精力等资源很不相同。同时,这也让我更加不喜欢windows的各种诡异的问题,一个图形界面封装了所有,偶尔抛出一个exception或error,让用户很为难啊。
尽管问题看起来解决了,但实际上,究竟为何安装mysql后配置实例时,会出现密码设置无效或出错的状况呢?我还不得而知,希望对msi有研究的同仁分析下msi文件内容。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com