Alf*_*red 17 mysql ubuntu-12.04
我在Kubuntu 12.04上,在通过apt-get(mysql ver:5.5.35)安装mysql之后,我正在尝试启动mysql服务,但是我收到了这个错误:
sudo服务mysql启动
开始:作业无法启动
所以我用Google搜索了这个问题,它说我必须转到/var/log/mysql/error.log
但是我的error.log文件是空的:(
然后我检查了权限:
drwxr -s --- 2 mysql adm 4096 Apr 7 11:21 mysql
-rw-r ----- 1 mysql adm 0 Apr 7 11:21 error.log
所以我不知道该怎么办......为什么会出现这个错误?为什么错误文件为空?
小智 44
首先备份你的/ var/lib/mysql /目录只是为了安全起见.
sudo mkdir /home/<your username>/mysql/
cd /var/lib/mysql/
sudo cp * /home/<your username>/mysql/ -R
Run Code Online (Sandbox Code Playgroud)
接下来清除MySQL(这将删除php5-mysql和phpmyadmin以及其他一些库,所以准备在此之后重新安装一些项目.
sudo apt-get purge mysql-server-5.1 mysql-common
Run Code Online (Sandbox Code Playgroud)
删除文件夹/ etc/mysql /及其内容
sudo rm /etc/mysql/ -R
Run Code Online (Sandbox Code Playgroud)
接下来检查你的旧数据库文件是否仍然在/ var/lib/mysql /中,如果它们没有,那么将它们复制回文件夹然后chown root:root
(只有在文件不再存在时才运行这些)
sudo mkdir /var/lib/mysql/
sudo chown root:root /var/lib/mysql/ -R
cd ~/mysql/
sudo cp * /var/lib/mysql/ -R
Run Code Online (Sandbox Code Playgroud)
接下来安装mysql服务器
sudo apt-get install mysql-server
Run Code Online (Sandbox Code Playgroud)
最后重新安装任何缺少的软件包,如phpmyadmin和php5-mysql.
小智 10
我的问题是内存不足.Digital Ocean为Ubuntu添加交换内存提供了很好的指导:https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04
这解决了这个问题并使我能够重新启动否则无法启动的Mysql.
重新安装将起作用,因为它会将所有值重置为默认值.最好找到真正的罪魁祸首(my.cnf编辑错误确实发生了,例如在mysql调优期间出现错误/过时的参数建议.)
如果您怀疑my.cnf中的某些值是错误的,那么这是mysql诊断:运行mysqld以显示结果.
sudo -u mysql mysqld
Run Code Online (Sandbox Code Playgroud)
然后,修复从屏幕弹出的所有my.cnf键错误,直到mysqld成功启动.
然后使用重启它
sudo service mysql restart
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
106711 次 |
| 最近记录: |