重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
启动Mysql提示ERROR! The server quit without updating PID file (/usr/local/var/mysql/xxxx.local.pid).
我们提供的服务有:做网站、网站制作、微信公众号开发、网站优化、网站认证、精河ssl等。为近千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的精河网站制作公司
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安装后通过 service mysqld start 无法启动。
报错信息如下:
主要含义是说:
mysql启动过程中找不到 /var/lib/mysql/aria_log_control 这个文件;
或者这个文件存在但是打不开。
所以我怀疑的方向有两个:
1、 /var/lib/mysql/aria_log_control 这个文件不存在;
切换到/var/lib/mysql目录下,查看文件是否存在:
可以看到文件是存在的,只是这个文件的属主不对,这里是root,应该是mysql用户和用户组才对。
2、所以应该是第二个怀疑的方向,文件存在,但是没有权限操作:
把该文件的属主改为mysql:
chown -R mysql.mysql /var/lib/mysql
并修改文件的操作权限:
chmod 755 /var/lib/mysql
再执行 service mysqld start 就可以正常启动了。
1、找到mysql安装目录下的bin目录路径。
2、打开cmd,进入到bin目录的路径下,输入mysql -u root -p。
问题分析:
1、查看mysql command line client默认执行的一些参数。方法:开始-所有程序-MySQL-MySQL Server5.5-MySQL5.5 command line client,右键属性。
2、注意看目标的内容。内容比较长,复制出来如下:
"G:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe" "--defaults-file=G:\Program Files\MySQL\MySQL Server 5.5\my.ini" "-uroot" "-p"
3、注意"--defaults-file=G:\Program Files\MySQL\MySQL Server 5.5\my.ini" "-uroot" "-p" 中指定的配置文件是 my.ini文件。
这里我们查看一下安装目录,即G:\Program Files\MySQL\MySQL Server 5.5,6个ini文件均不是 my.ini。
4.复制my-small.ini文件,更名为my-ini文件,保存。
5.启动mysql command line client,问题解决。