看板FreeBSD
标 题Re: [请益] mysql 启动
发信站SayYA 资讯站 (Tue Jun 10 00:45:01 2008)
转信站ptt!ctu-reader!ctu-peer!news.nctu!News.Math.NCTU!SayYa
※ 引述《[email protected] (小居批~)》之铭言:
> ※ 引述《chiouss (Heart-shaped chant)》之铭言:
> : 自己在 /etc/rc.conf 里面加 mysql_enable="YES" (如果没有的话)
> : 然後 /usr/local/etc/rc.d/mysql-server.sh start
> 现在启动应该是可以了
> 因为他有起来
> /usr/local/etc/rc.d/mysql-server.sh START
^^^^^??
你确定你当时打的跟现在贴的一样是大写 START?
% sudo /usr/local/etc/rc.d/mysql-server START
/usr/local/etc/rc.d/mysql-server: unknown directive 'START'.
Usage: /usr/local/etc/rc.d/mysql-server
[fast|force|one](start|stop|restart|rcvar|status|poll)
> 回应 ERROR 2002 (HY000): Can't connect to local MySQL server through socket
> '/tmp/mysql.sock' (2)
> 我去看了一些版的回文
> 好像 mysql.sock 应该是要自动产生的
> 但是自从我把他干掉以後一直没有重生
有人教你砍掉 mysql.sock?
1.你先查一下有没有现在在跑的 ps 内有没有 mysql, 以及 listening socket
其中可能有殭屍,打下列两行指令查一下:
(因为你直接砍 socket, 不是是透过 mysql shutdown)
sockstat -4 | grep mysql
ps aux|grep mysql
2.下列方式你也试过了?
# chown -R mysql:mysql /usr/local/share/mysql
# chown -R mysql:mysql /var/db/mysql
# chmod -R 755 /var/db/mysql
# chmod 744 /usr/local/share/mysql
# /usr/local/share/mysql/mysql.server start
若这也不通,还有另外几招。
3.下次砍东西前,请先别冲动先 ls -al 看一下相关属性是怎样..
ls -al /tmp/ | grep mysql 正常应该是像下面这样:
srwxrwxrwx 1 mysql wheel 0 4 30 01:11 mysql.sock
4. 至於前面有人提到的 my.cnf 通常是设在 /etc/my.cnf 或帐号家目录 ~/.my.cnf
你可以用 ls -al /etc/my.cnf 或 ls -al ~/.my.cnf 确认一下
若没有大概你前人跟你都没有设吧,没设的话那就是会照预设值走。
5. 请用 find 找档名, grep 找内容
比方说 find / -name "mysql*"
或者可以先更新 locatedb (打 /etc/periodic/weekly/310.locate)
再用 locate mysql.sock 这样子找
6. 有的人回的话可能要先查证,再来谈是否相信,这才是真科学了,比如:
『/usr/loca/etc/rc.d/ 里面没有 mysql-server
应该就表示你的 mysql 不是用 ports 或是 package 装的』
不然只会以讹传讹。
--
静中见真境,淡中识本然
--
※ Origin: SayYA 资讯站 <bbs.sayya.org>
◆ From: 118-166-53-9.dynamic.hinet.net