ChatGPT解决这个技术问题 Extra ChatGPT

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

我在我的 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 [错误] 致命错误:请阅读手册的“安全”部分以了解如何以 root 身份运行 mysqld! 111028 16:57:43 [错误] 中止 111028 16:57:43 [注意] /usr/local/mysql/bin/mysqld:关闭完成

在 macOS 上,使用 mdfind mysql.server 查看您的服务器可执行文件在哪里

t
tom10271

简单地:

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
A
Alan

试试/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
J
Jordan

我也喜欢别名...但是,我在启动 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方式有什么区别?
mysqld_safe vs mysql.server开始,mysql.server 在启动服务器之前,将位置更改为 MySQL 安装目录,然后调用 mysqld_safe。
我确实尝试了该命令,但它无法启动,而且似乎我无法拥有 pid 文件。我应该怎么办?
@ray6080,我想你忘了在 ./mysql.server start 前面输入 sudo。在 support_files 目录中,以下命令适用于我。 sudo ./mysql.server start
P
PandaSobao

正如 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 命令

# 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 的此类文件或目录
A
Alex K

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

/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放在路径中
V
Vega

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

你可以试试

/usr/local/bin/mysql.server start

自 2022 年 1 月 9 日起,这适用于 Mac OSX Big Sur!
C
Community
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


s
shacharsol

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

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

对我来说,路径是 /usr/local/mysql/support-files/mysql.server
M
Merhawi Fissehaye

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

brew doctor

这表明我运行

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

然后:

brew update
mysql.server start

mysql现在正在运行


不知道为什么有人反对。这在 brew 更新期间发生在我身上。运行 brew doctor,然后按照说明将特定路径添加到我的 bash 配置文件修复了问题。谢谢你的建议。
g
gitaarik

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

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


M
Mario Uher

如果您通过 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(我从 stackoverflow.com/a/4622474/459863 学到的)表明我首先必须运行 ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents。在那之后,它奏效了。
N
NIRAJ KUMAR

MySql 服务器启动错误'服务器退出但没有更新 PID 文件'

如果您从自制软件安装了 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

h
hamx0r

在 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/


为 mysql 8.0.28 在 macOS monterray 上工作
H
Hoppo
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