当前位置: 首页>>技术教程>>正文


如何启动/停止mysql服务器?

, ,

问题描述

我试图在一些描述如何正确启动&停止mysql服务器。

我发现这个链接:How to start/stop MySql server on Ubuntu 8.04 | Abhi’s Blogging World

我运行了这个命令:

/etc/init.d/mysql start 

但我看到这个错误

ERROR 1045 (28000) Access denied for user....

我试过这个命令后:

sudo /etc/init.d/mysql start

我输入了我的密码,并再次看到相同的错误。

下一个命令:

sudo /etc/init.d/mysql - root -p start

结果是:

ERROR 1049 (42000) Unknown database 'start'.

当我运行这个命令时:

sudo service mysql start

MySQL服务器成功开始。凉!

那么,其他命令有什么问题呢?他们为什么会导致错误?

最佳解决方案

您的前两个命令不是以超级用户身份运行,因此这是预期的行为。你需要是root来停止/启动mysql。

然而:

sudo /etc/init.d/mysql start

应该管用。对我来说的确如此:

kojan:~> sudo /etc/init.d/mysql restart
[sudo] password for chris: 
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..

我用重启而不是开始,因为它已经运行了,但效果是一样的。你确定你输入的密码正确吗? :)你有没有编辑过你的sudo配置,这将阻止这个工作?

这个..

sudo /etc/init.d/mysql - root -p start

争论是错误的。一个init.d脚本只需要startstoprestart – 只需一个单词告诉它该做什么。正如你试图做的那样,你不能给它多个论点。

无论如何,最简单的答案就是你实际工作的那个,是推荐的方式。 service会随着时间的推移替换所有的init.d脚本,所以你应该养成使用service的习惯。你链接的页面是3岁,所以必须采取一些盐:)

次佳解决方案

还有助于仔细检查”mysql”是否是正确的服务名称。在我的情况下不是。我不断收到以下响应:运行时mysql:无法识别的服务

service mysql status 

然后我检查了/etc/init.d并找到名为mysqld的脚本,其中列出了进程名称:mysqld和prog = mysqld

那么我做了

service mysqld status
service mysqld stop
service mysqld start 

他们都很好。

第三种解决方案

对于Ubuntu 12.10和更高版本:

START MYSQL:

sudo start mysql

RESTART MYSQL:

sudo restart mysql # The service must be running

停止MYSQL:

sudo stop mysql # The service must be running

第四种方案

实际上,当我在我的Ubuntu机器上安装mysql-workbench时,出现了一个奇怪的错误。之后,我尝试使用以下命令启动mysql服务:

service mysql start

所以我得到了MySQL服务器没有安装的解决方案,所以我安装了它并解决了我的问题。安装mysql-server的命令是:

sudo apt-get install mysql-server

安装成功后,以如下方式启动MySQL服务器:

service mysql start

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/261.html,未经允许,请勿转载。