我遇到了一个小问题,希望有人能帮助我理解为什么我的系统会这样。顺便说一句,我是 MySQL + Terminal 新手,所以请对我宽容一点!我通过阅读 MySQL 文档和搜索此网站上的其他问题做了一些尽职调查,但我还没有找到解决我特定问题的好答案。
导致问题的步骤:
我刚刚使用通用二进制文件完成了全新的 MySQL 安装,并按照 MySQL 文档中的说明进行操作(关联)。我在 Ubuntu Desktop 12.04(64 位)上运行。MySQL v5.6。完成安装说明后,我可以启动服务器,对其进行一些基本测试,关闭它,然后按照安装后步骤重新启动它 这里. 这一切都运行良好。
问题描述:
我的问题是,在我重新启动主机系统后,当我尝试执行$ sudo bin/mysqld_safe --user=mysql &
此操作时,它不会提示我输入 sudo 权限的密码。影响是服务器无法启动 - 或者至少看起来无法启动 - 我这样说是因为,之后,当我bin/mysqladmin version
这样做时,它说无法连接,请检查服务器是否正在运行,等等。
它在终端中的样子如下:
me@vm-ubuntu:~$ cd /usr/local/mysql
me@vm-ubuntu:/usr/local/mysql$ sudo bin/mysqld_safe --user=mysql &
[1] 1851
me@vm-ubuntu:/usr/local/mysql$ bin/mysqladmin version
bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
[1]+ Stopped sudo bin/mysqld_safe --user=mysql
然后我得到了我的命令提示符。
解决问题:
有趣的是:如果我执行其他涉及使用 sudo 的任务,它会提示我输入密码,之后,我可以返回并使用上述相同步骤启动 MySQL 服务器。例如:
me@vm-ubuntu:/usr/local/mysql$ cd data
me@vm-ubuntu:/usr/local/mysql/data$ sudo gedit vm-ubuntu.err
提示我输入密码,我照做了。文件在 gedit 中打开,所以我关闭它,然后返回到终端,我切换回 mysql 目录并尝试使用 再次启动服务器,$ sudo bin/mysqld_safe --user=mysql &
这一次,它成功了(我知道这一点,因为当我这样做时,bin/mysqladmin version
它不会因为服务器没有运行而对我大惊小怪)。
因此,我可以解决这个问题,而且考虑到我并不经常重新启动主机系统,所以这不是什么大问题,但如果有人能帮助我理解为什么在$ sudo bin/mysqld_safe --user=mysql &
重新启动主机系统后第一次尝试启动服务器时没有提示我输入密码,我将不胜感激。我在这个网站上读过其他类似的问题,但没有找到一个能解决我的特定问题的问题。谢谢!