我在管理 MySQL 时遇到了麻烦。我尝试像这样停止它:
/etc/init.d/mysql stop
我收到了这条消息:
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql stop
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) utility, e.g. stop mysql
所以我尝试这样做:
$ sudo mysql stop
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
$ sudo mysql start
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
我的操作系统是 Ubuntu。你知道我为什么会陷入这种死胡同吗?:)
答案1
您需要超级用户权限才能运行service
:
$ sudo service mysql stop
或者(以 root 身份):
# service mysql stop
使用service
和chkconfig
实用程序现在是大多数 Linux 发行版中服务启动脚本处理的事实标准。
编辑:
如果以上方法都不起作用,你可以mysqladmin
直接尝试:
$ sudo mysqladmin shutdown
答案2
再次阅读该消息。
...使用该
service(8)
实用程序,例如service mysql stop
...您也可以使用该
stop(8)
实用程序,例如stop mysql
您将两者混合在一起,最终运行mysql
命令行客户端并尝试连接stop
到start
数据库在本地服务器上(显然没有运行)。
选择其中一个。请注意,sudo
如果您不是以 root 身份登录,则其中一个前面都需要有。
并且,如果不太明显的话,mysql-server
需要正确安装才能使这些功能正常工作。听起来你的安装有点不对劲。