OSX 10.13.6
几年前,我用自制软件安装了mariadb sever,我很少使用它。 今天,我尝试使用以下命令启动mariadb:
$ mysql.server start
我得到了一堆错误。 所以,我做到了:
$ brew update
然后:
$ brew uprade mariadb
这完成得很好,现在我可以通过以下方式启动 mariadb:
$ mysql.server start
我可以访问我所有的旧数据库。
我遇到的问题是我无法停止mysql。 这两个命令都挂起:
$ mysql.server stop
和(在另一个终端窗口中):
$ mysql.server status
根据mysql.server的MariaDB文档,这两个命令都应该有效。
目前,我正在像这样杀死服务器:
$ killall mysqld mysqld_safe
然后检查服务器是否已被杀死:
$ ps aux | grep mysqld
当我在 mysql 运行时运行 ps 命令时,我得到:
~$ PS 辅助 | grep mysqld 7stud 3707 0.0 1.0
4808208 79948 s005 s 1:26PM 0:00.47/
usr/local/Cellar/mariadb/10.3.15/bin/mysqld --basedir=/usr/local/Cellar/mariadb/10.3.15 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mariadb/10.3.15/lib/plugin --log-error=/usr/local/var/mysql/My-MacBook-Pro-2.local.err --pid-file=/usr/local/var/mysql/My-MacBook-Pro-2.local.pid7螺柱 3643 0.0 0.0 4287792 1460 s005 s 1:26PM 0:00.02/bin/sh/usr/local/Cellar/mariadb/10.3.15/bin/mysqld_safe --datadir=/usr/local/var/mysql --pid-file=/usr/local/var/mysql/My-MacBook-Pro-2.local.pid
7螺柱 4544 0.0 0.0 4267752 880 S000 S+ 下午 1:41 0:00.00
格雷普 Mysqld
关闭mariadb服务器的正确方法是什么?
mysql> SHOW VARIABLES LIKE '%vers%';
+---------------------------------+------------------------------------------+
| Variable_name | Value |
+---------------------------------+------------------------------------------+
| innodb_version | 10.3.15 |
| protocol_version | 10 |
| slave_type_conversions | |
| system_versioning_alter_history | ERROR |
| system_versioning_asof | DEFAULT |
| thread_pool_oversubscribe | 3 |
| version | 10.3.15-MariaDB |
| version_comment | Homebrew |
| version_compile_machine | x86_64 |
| version_compile_os | osx10.13 |
| version_malloc_library | system |
| version_source_revision | 07aef9f7eb936de2b277f8ae209a1fd72510c011 |
| version_ssl_library | OpenSSL 1.0.2r 26 Feb 2019 |
| wsrep_patch_version | wsrep_25.24 |
+---------------------------------+------------------------------------------+
14 rows in set (0.01 sec)
我遇到了同样的问题,在运行mysql.server启动后尝试使用mysql.server stop和mysql.server状态,但它们只会无限期运行。
如果您使用的是Mac,则mysql.server stop似乎不起作用...我用自制软件安装了mariadb,并发现我可以使用brew服务来启动和停止它 链接:
https://dba.stackexchange.com/questions/214883/homebrew-mariadb-server-start-error-with-mysql-server-start
命令非常简单,它们对我有用
brew services start mariadb
brew services stop mariadb
可能有点晚了,但我希望这可以帮助您找出问题。
有关详细信息,请参阅 https://stackoverflow.com/a/59938033/4579271。
要修复,请运行:
cp /usr/local/bin/mysql.server /usr/local/bin/mysql.server.backup
sed -i "" "s/user='mysql'/user=`whoami`/g" /usr/local/bin/mysql.server