赞
踩
关于mysql5.7启动报错(此文只对mysql5.7有效,其他版本也可以参考,方法思想大同小异)
首先彻底卸载mysql任何版本:apt-get autoremove mysql-server #此条命令已经包括server 和client
然后重新安装(如果不指定,默认安装最新,此刻最新版本是5.7) sudo apt-get install mysql #这样就自动安装了server 和client
如果依赖不足可以 执行一项 :sudo apt-get install -f
安装完大小是160m就对了。
然后启动mysql-server :service mysql start
和启动脚本(启动文件mysql的目录) :/etc/init.d/mysql start
然后 执行 mysql -u root -p;后输入password 报错:找不到/var/lib/mysql/mysql.sock
第一种可能是你没有启动mysql-server: service mysql start(这种可能不大)
看是否启动可以 用 ps aux|grep mysql 如果有 。。。。。 mysqld就是启动了;
也可以用 /etc/init.d/mysql status
看到:
------------------------------------------------------------------------------------------------------------------------------------------------------
mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since 六 2018-11-24 23:41:45 CST; 10min ago
Process: 67337 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS)
Process: 67325 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 67336 (mysqld)
CGroup: /system.slice/mysql.service
└─67336 /usr/sbin/mysqld
------------------------------------------------------------------------------------------------------------------------------------------------------
就是已启动
我的是因为修改了my.cnf里的[client]和[server]里的‘’socket=........‘’这一项 为/var/lib/mysql/mysql.sock这是在网上看的帖子然而不适用与我的mysql5.7这个坑很严重 并且我用find / -name mysql.sock 一直都找不到这个mysql.sock文件 按照网上帖子,即使自己创建在/var/lib/mysql里也不行.反复尝试都以失败告终.
然后我第二天又反复卸载,反复安装mysql
关键解决方法:
netstat -anp | grep mysql # 用这条命令可以获知mysql.sock文件的位置
这才知道我的mysql.sock是在/var/run/mysqld/mysqld.sock (请注意是mysqld.sock不是mysql.sock这也就是为什么即使启动成功了以后我find 命令一直找不到mysql.sock,也许这是5.7版本的特殊之处,网上的帖子不适用)
然后就把 /etc/my.cnf 里的 [client]和[server]的socket=‘。。。。。’都改成我的/var/run/mysqld/mysqld.sock
再次执行 mysql -u root -p;输入密码 成功进入mysql ~~~~~~~~~~~~~
----------------------------------------------------------------------------------------------
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.24-0ubuntu0.16.04.1 (Ubuntu)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
---------------------------------------------------------------------------------------------
大功告成!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。