十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
启动Mysql提示ERROR! The server quit without updating PID file (/usr/local/var/mysql/xxxx.local.pid).
创新互联公司始终坚持【策划先行,效果至上】的经营理念,通过多达十余年累计超上千家客户的网站建设总结了一套系统有效的全网推广解决方案,现已广泛运用于各行各业的客户,其中包括:成都隧道混凝土搅拌车等企业,备受客户好评。
1、查看mysql错误日志:打开/usr/local/var/mysql/xxxx.err或者xxxx.local.err文件。
2、问题应该是某个程序占用了mysql的默认端口3306。
3、查看端口使用情况lsof -i:3306,发现是一个用户名为_mysql启动了mysqld指令占用了3306,感觉现象非常奇怪,不清楚为什么会有这个用户组,为什么会启动mysqld,由于这个电脑是公司其他同事转移资产到的我名下,所以有可能是之前用户或者公司it装了什么服务导致的。
4、首先尝试干掉进程:sudo kill xxxx,结果发现当kill后,还会重新启动。
5、尝试修改mysql默认启动端口,Baidu上有人告诉修改/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist文件
添加string--port=3307/string保存,先重新启动mysql服务,发现问题依然存在,发现配置没有起作用,默认端口依然是3306,然后考虑重新启动电脑,看看是否可以修改占用默认端口的配置。
6、重启后再次查看3306端口占用情况,发现确实不存在了。但是发现启动mysql服务时,依然存在问题:
仔细观察发现,这个占用和plist中的mysql配置一样的,所以可以确定每次启动计算机后,会按默认配置执行一个mysqld。
7、不清楚为什么会按com.oracle.oss.mysql.mysqld.plist配置执行mysqld,于是把注意力放在了Mac启动上。
8、Mac的启动原理是:
看到这里就明白了,原来LaunchDaemons里面放的是Mac启动时的一些启动服务,
9、System/Library和/Library和~/Library目录的区别:
10、System/Library和/Library和~/Library目录的区别:
11、有了上面的结果,于是把注意力放在了com.oracle.oss.mysql.mysqld.plist上,每个Mac启动中都有么,这个是如何添加的。首先查看了家里的其他苹果电脑,发现都没有这个plist文件,于是开始研究这个文件的产生原因。
12、经过Baidu怀疑这个文件应该是之前用dmg安装包安装的mysql产生的,在设置中也发现了残留信息
于是果断把自动启动去掉,重启计算机。
13、重启后,发现无论是3306还是3307端口上都没有mysql服务了,于是运行mysql.server start,这次终于看见了Starting MySQL . SUCCESS!
14、删除com.oracle.oss.mysql.mysqld.plist文件,重启电脑后,发现设置中仍然还有MySQL的控制选项。
15、MySQL dmg安装方式的卸载方法:
至此,这个问题算是完美解决了。
方法/步骤
默认情况下,mySQL是随开机自动启动的,这就导致了MAMP内置的mysql无法正常启动,解决办法就是先禁用单独安装的mySQL。
Macbook MAMP mysql无法启动(灯不亮)如何解决
禁用单独安装的mySQL。
依次点击macbook左上角的【苹果标志-系统偏好设置-MySQL】,其中MySQL位于设置的最下面。进入后点击“Stop MySQL server”,输入apple ID的密码,就能禁用单独安装的mySQL。此时,左侧绿色的“running”会变为红色的“stopped”,表明,mySQL成功禁用。
需要注意的是,此过程需要先退出MAMP,否则可能会导致禁用失败。
重新启动MAMP,点击“start servers”,输入apple ID的密码,即可成功启动“mySQL Server”。
step1:关闭Mysql服务
苹果-系统偏好设置-最下边点mysql 在弹出页面中 关闭mysql服务(点击stop mysql server)
step2:
进入终端输入:cd /usr/local/cellar/mysql/8.0.11/bin/
回车后 登录管理员权限 sudo su
回车后输入以下命令来禁止mysql验证功能 ./mysqld_safe --skip-grant-tables
回车后mysql会自动重启(偏好设置中mysql的状态会变成running)
step3.
输入命令 ./mysql
回车后,输入命令 FLUSH PRIVILEGES;
回车后,输入命令 alter user 'root'@'localhost' Identified by '0709'
修改成功
安装好mysql和workbench后,启动mysql可以正常启动;再启动workbench,报如下错误:Cannot Connect to Database Server:
1,启动mysql:mysql -u root -p;密码:安装mysql设置的密码(mac默认不显示密码,输完后,直接enter)
2,先查看端口是否为默认的3306(虽然可以改,但要使用默认的):show global variables like 'port';(;不能少)
3,若端口没有问题,确认是3306,在终端输入以下两行命令:
(1)ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your password';
(2)FLUSH PRIVILEGES;
4,重启workbench,但出现拒绝连接错误:Access denied for user 'root'@'localhost'(using password:YES),如下:
5,按照如下步骤执行:
(1)苹果-系统偏好设置-最下边点MySQL 在弹出页面中 关闭mysql服务(点击stop mysql server);
(2)进入终端输入:cd /usr/local/mysql/bin/
回车后 登录管理员权限 sudo su
回车后输入以下命令来禁止mysql验证功能 ./mysqld_safe --skip-grant-tables
回车后mysql会自动重启(偏好设置中mysql的状态会变成running)
(3)输入命令 ./mysql
回车后,输入命令 FLUSH PRIVILEGES;
回车后,输入命令 SET PASSWORD FOR 'root'@'localhost' ;
至此,密码修改完成。
6,终端重新进入mysql,进入workbench,workbench可以进入了,却在进入时显示:
进入后显示:
同时,在左下角显示NO CONNECTION;输入密码连接时,也还是连接失败:
6,重启电脑,连接成功(不求甚解。。。)
PS:若有发现再来补充。
1点击右上角的苹果图标,选择系统偏好设置2在菜单中选择mysql3点击进入,选择启动mysql服务,会提示输入密码,密码为您的mysql数据库密码4启动成功,可以在终端中使用了