MYSQL在ubuntu安装出错

事故是这样出现的

原来给ubuntu8.04版本写过一个自动化安装运行环境的脚本,能自动配置nginx, apache2, mysql, java, tomcat等软件及系统的相关设置。

而这次需要安装一台装有ubumtu9.10的server,没仔细考虑版本差异,只是把apt的sources.list文件作了处理。其他的让脚本自动安装。

结果就卡在了mysql的安装上,装完运行不起来,并直接导致新版的phpmyadmin连不上mysql创建不了phpmyadmin的配置数据库,也安装失败。

回头查脚本,发现安装mysql的命令里只作了将原来的my.cnf文件覆盖到/etc/mysql/my.cnf。看来是老版本的mysql配置文件与新版mysql不兼容。

得,因为是直接覆盖掉原文件,没留原始配置文件的备份,而手头也没有9.10的ubuntu,所以第一时间想到的就是将mysql删除后重新装。

问题就此开始复杂化

运行apt-get remove mysql-server后,说安装过程中的dpkg报错,应该是phpmyadmin没安装失败导致的,于是先apt-get remove phpmyadmin,但又卡在了phpmyadmin要先删除mysql里的配置数据库,却连不上mysql,因为这时mysql根本就没运行。干!

想不到原因,直接重启再说。因为是远程操作看不到控制台输出,重启完成后进系统运行ps aux|grep mysql居然发现mysql运行起来了。以为重启前的安装出错是灵异现象。直接进phpmyadmin想看看是否一切ok。这时却说找不到mysql的pid文件。但进程中却明明有mysql进程在运行。怪异得很。

没折,还是先把这两个家伙删除干净再重新来,当删除完phpmyadmin和mysql后发现/etc/mysql目录下的东西都还在,重新安装后里面的配置都没重新安装,可能是ubuntu认为你重新安装只是为了修复程序本身,却不去改动用户的自定义配置文件。于是就想到,我把配置文件目录手动删除,这下你安装时总得给我重写了吧。

得,当我这么操作完又安装一遍之后,mysql报错说找不到/etc/mysql/my.cnf文件。nnd,这下头大了,手动删除它居然也不重写my.cnf文件。但这时其实mysql已经在运行了,从phpmyadmin也能进到mysql里,但会报一些警告信息。没有my.cnf是绝对不行的。目前没法子了只得google,找到说需要先删除再安装时连mysql-common这个包一起安装,因为初始配置文件是来自这个包。但是按此方法一试还是没用。还报出新的错误:

/etc/mysql/debian-start: No such file or directory

最后从ubuntu的论坛找到了 这篇文章 才解决, 还有 这篇也是正解 。其实也是so easy,是自己对 apt-get命令不熟悉:

apt-get autoremove --purge mysql-server apt-get install mysql-server

最后的最后总结教训

修改任何/etc/下文件时最好先作个备份。

多熟悉系统命令,其实删除这步也是卡在了--purge这个参数上。我查--help知道有这个purge,但却用为:apt-get purge mysql-server

faint~~
E: Sub-process /usr/bin/dpkg returned an error code (1)

cd /var/lib/dpkg/
sudo mv info info.bak
sudo mkdir info
然后再:
sudo apt-get install -f

还是不行,看来得再删除一次,把配置文件信息也一并删除

apt-get autoremove --purge mysql*

reboot

sudo aptitude install mysql-server-5.1 重新下载安装

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值