如何在 Mac OS Lion 上从命令行启动 MySQL 服务器?

Posted

技术标签:

【中文标题】如何在 Mac OS Lion 上从命令行启动 MySQL 服务器?【英文标题】:How to start MySQL server from command line on Mac OS Lion? 【发布时间】:2011-12-17 04:34:23 【问题描述】:

我在我的 Mac 上安装了 mysql。除了使用安装在系统偏好设置中的 mySQL.prefPane 工具启动 SQL 服务器之外,我还想知道从命令行启动的说明。 我这样做:

之后

苏根

我通过命令行启动 mySQL 服务器,但它产生如下错误:

sh-3.2# /usr/local/mysql/bin/mysqld

111028 16:57:43 [警告] 设置 lower_case_table_names=2 因为 /usr/local/mysql-5.5.17-osx10.6-x86_64/data/ 的文件系统是大小写 不敏感

111028 16:57:43 [ERROR] 致命错误:请阅读“安全”部分 了解如何以 root 身份运行 mysqld 的手册!

111028 16:57:43 [错误] 中止

111028 16:57:43 [注意] /usr/local/mysql/bin/mysqld: 关机完成

【问题讨论】:

在 macOS 上,使用 mdfind mysql.server 查看您的服务器可执行文件在哪里 【参考方案1】:

简单地说:

mysql.server start

mysql.server stop

mysql.server restart

【讨论】:

这是我得到的这个:. ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXXX.pid). @nyxee 你可能需要用sudo运行它! 即使使用sudo,我也遇到了同样的错误。在 mac Big Sur 和 MySQL 5.7 上,我需要停止/启动:sudo launchctl load -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plistsudo launchctl unload -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist【参考方案2】:

试试/usr/local/mysql/bin/mysqld_safe

例子:

shell> sudo /usr/local/mysql/bin/mysqld_safe
(Enter your password, if necessary)
(Press Control-Z)
shell> bg
(Press Control-D or enter "exit" to exit the shell)

您还可以将这些添加到您的 bash 启动脚本中:

export MYSQL_HOME=/usr/local/mysql
alias start_mysql='sudo $MYSQL_HOME/bin/mysqld_safe &'
alias stop_mysql='sudo $MYSQL_HOME/bin/mysqladmin shutdown'

【讨论】:

它有效。但是我无法从执行命令中退出指针。如何在终端窗口执行时停止它。 请注意,如果您使用 Homebrew 安装了 mysql,则此答案不适用。 对我来说它最终只是“mysqld ”,该文件位于/usr/local/mysql/bin/mysqld【参考方案3】:

我也喜欢别名...但是,我在启动 MySQLCOM 时遇到了问题...它静默失败...我的解决方法类似于其他... ~/.bash_aliases

alias mysqlstart='sudo /usr/local/mysql/support-files/mysql.server start'
alias mysqlstop='sudo /usr/local/mysql/support-files/mysql.server stop' 

【讨论】:

其他答案在 OSX 10.7.5 w/最新 MySQL 安装上失败。这个成功了 - 谢谢! 谢谢!!我想启动 mysql 并能够关闭终端,这很有效。这种启动方式和mysqld_safe方式有什么区别? From mysqld_safe vs mysql.server 在mysql.server启动服务器之前,它会改变位置到MySQL安装目录,然后调用mysqld_safe。 我确实尝试了该命令,但它无法启动,并且似乎我无法拥有 pid 文件。我该怎么办? @ray6080 ,我想你忘了在./mysql.server start 前面输入sudo。在 support_files 目录中,以下命令适用于我。 sudo ./mysql.server start【参考方案4】:

正如this 有用的文章所述: 在 OS X 上从命令行启动/停止 MySQL:

sudo /usr/local/mysql/support-files/mysql.server start 
sudo /usr/local/mysql/support-files/mysql.server stop 

在 Linux 上从命令行启动/停止:

/etc/init.d/mysqld start 
/etc/init.d/mysqld stop 
/etc/init.d/mysqld restart 

一些 Linux 版本也提供服务命令

# service mysqld start 
# service mysqld stop 
# service mysqld restart

 # service mysql start 
 # service mysql stop 
 # service mysql restart 

【讨论】:

没有来自/usr/local/mysql/support-files/mysql.server stop 的此类文件或目录【参考方案5】:

如果您使用自制软件安装它,二进制文件将类似于

/usr/local/Cellar/mysql/5.6.10/bin/mysqld

这意味着你可以开始它

/usr/local/Cellar/mysql/5.6.10/support-files/mysql.server start

然后停止它

/usr/local/Cellar/mysql/5.6.10/support-files/mysql.server stop

编辑:正如 Jacob Raccuia 提到的,确保将适当版本的 MySQL 放入路径中。

【讨论】:

是的!!!!!!我没有意识到我是这样安装的!确保将适当版本的 mysql 放在路径中【参考方案6】:

也许你的 mysql-server 没有启动。

你可以试试

/usr/local/bin/mysql.server start

【讨论】:

这适用于 Mac OSX Big Sur 自 2022 年 1 月 9 日起!【参考方案7】:
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

在 .bash_profile 中创建别名

alias start_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias stop_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM stop"

如果您尝试以 root 身份运行,请使用以下安全模式

sudo ./bin/mysqld_safe

如果您仍然遇到问题,建议阅读: mysql5.58 unstart server in mac os 10.6.5

【讨论】:

【参考方案8】:

对我来说,这个解决方案适用于 mac Sierra OS:

sudo /usr/local/bin/mysql.server start
Starting MySQL
SUCCESS!

【讨论】:

对我来说,路径是/usr/local/mysql/support-files/mysql.server【参考方案9】:

如果它与自制软件一起安装,请尝试在终端中输入mysql.server,就可以了。 AFAIK 它的可执行文件将在 /usr/local/bin/mysql.server 下。

如果没有,您可以随时运行“locate mysql.server”,它会告诉您在哪里可以找到此类文件。

【讨论】:

【参考方案10】:

我的 MySQL 是通过 OS X ElCaptain 上的自制软件安装的。什么修复了它正在运行

brew doctor

建议我跑步

sudo chown -R $(whoami):admin /usr/local

然后:

brew update
mysql.server start

mysql 正在运行

【讨论】:

不知道为什么有人投了反对票。这在 brew 更新期间发生在我身上。运行 brew doctor,然后按照说明将特定路径添加到我的 bash 配置文件修复了问题。感谢您的建议。【参考方案11】:

如果您通过Homebrew 安装了 MySQL,这些命令将对您有所帮助:

# For starting
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

# For stoping
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

【讨论】:

默认情况下,mysql 的 LauchAgent 不存在。运行brew info mysql(我从中学到了:***.com/a/4622474/459863)表示我首先必须运行ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents。之后,它起作用了。【参考方案12】:

MySql server 启动错误'The server quit without update PID file'

如果你已经从 homebrew 安装了 mysql

从mac的偏好设置中关闭mysql服务器

ps ax | grep mysql

#kill all the mysql process running
sudo kill -9 pid

which mysql
/usr/local/bin/mysql
Admins-MacBook-Pro:bin username$ sudo mysql.server start

Starting MySQL
. SUCCESS! 

Admins-MacBook-Pro:bin username$ which mysql

/usr/local/bin/mysql

Admins-MacBook-Pro:bin username$ ps ax | grep mysql

54916 s005  S      0:00.02 /bin/sh 
/usr/local/Cellar/mysql@5.7/5.7.27_1/bin/mysqld_safe --datadir=/usr/local/var/mysql --pid-file=/usr/local/var/mysql/Admins-MacBook-Pro.local.pid
55012 s005  S      0:00.40 /usr/local/Cellar/mysql@5.7/5.7.27_1/bin/mysqld --basedir=/usr/local/Cellar/mysql@5.7/5.7.27_1 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql@5.7/5.7.27_1/lib/plugin --user=mysql --log-error=Admins-MacBook-Pro.local.err --pid-file=/usr/local/var/mysql/Admins-MacBook-Pro.local.pid
55081 s005  S+     0:00.00 grep mysql

【讨论】:

【参考方案13】:

在 mac Big Sur 和 MySQL 5.7 上,我需要停止/启动:

sudo launchctl load -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

sudo launchctl unload -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

这个答案来自https://coolestguidesontheplanet.com/start-stop-mysql-from-the-command-line-terminal-osx-linux/

【讨论】:

【参考方案14】:
111028 16:57:43 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!

你为你的mysql安装设置了root密码吗?这与您的 sudo root 密码不同。试试/usr/local/mysql/bin/mysql_secure_installation

【讨论】:

当我运行上述行时,它产生:Can't find a 'mysql' client in PATH or ./bin

以上是关于如何在 Mac OS Lion 上从命令行启动 MySQL 服务器?的主要内容,如果未能解决你的问题,请参考以下文章

Mac OS 怎么安装 命令行SVN

如何让 ibm_db 或 PyDB2 python 模块在 Mac OS X 10.7 Lion 中与 DB2 一起使用?

在 Mac OS X Lion 上安装 pymssql 时出错

如何将Mac OS X10.10.5下的Python2.7升级到最新的Python3.5

我在哪里可以找到 Mac OS X Lion 的“制作”程序?

如何在 Mac OS X 下AA,安装 gcc