MariaDB自制安装错误

Ras*_*nik 9 macos homebrew mariadb

我刚在Mac上通过自制软件安装了MariaDB.在安装结束时,我收到以下错误:

Warning: The post-install step did not complete successfully
You can try again using `brew postinstall mariadb`
Run Code Online (Sandbox Code Playgroud)

如果我跑,brew postinstall mariadb我得到:

==> /usr/local/Cellar/mariadb/5.5.34/bin/mysql_install_db --verbose --user=andrew --basedir=/usr/loca
MariaDB is hosted on launchpad; You can find the latest source and
email lists at http://launchpad.net/maria

Please check all of the above before mailing us!  And remember, if
you do mail us, you should use the /usr/local/Cellar/mariadb/5.5.34/scripts/mysqlbug script!

READ THIS: https://github.com/mxcl/homebrew/wiki/troubleshooting
Run Code Online (Sandbox Code Playgroud)

哪个没用!我跟着的教程告诉我跑unset TEMPDIR,然后mysql_install_db --user=mysql --basedir=$(brew --prefix mariadb); 运行以下结果:

/usr/local/opt/mariadb/bin/my_print_defaults: Can't read dir of '/usr/local/etc/my.cnf.d' (Errcode: 2)
Fatal error in defaults handling. Program aborted
chown: ./data: Operation not permitted
Cannot change ownership of the database directories to the 'mysql'
user.  Check that you have the necessary permissions and try again.
Run Code Online (Sandbox Code Playgroud)

我怀疑这个问题与/usr/local/etc/my.cnf.d文件夹有关.我已经在我试过的一些事情中看到了这个,但它在我的机器上并不存在.我已经尝试了一些mysql_install_db我在其他教程中找到的不同命令,但它们都会抛出(不同的)错误消息.

谢谢你的帮助!

Dan*_* Lv 26

只需在/usr/local/etc/my.cnf编辑器中打开配置文件,然后注释掉以下行:

!includedir /usr/local/etc/my.cnf.d
Run Code Online (Sandbox Code Playgroud)


Ras*_*nik 17

我没有成功进一步谷歌搜索问题我试图手动创建一个/usr/local/etc/my.cnf.d现在mysql_install_db命令似乎已经工作正常.我不确定这是否是合适的解决方案,或者如果my.cnf.d不存在表明安装的问题更严重,但是,由于事情似乎正在起作用,我将标记为已解决.

[更新]由于我在答案中有点不确定这是否是"正确的"解决方案,我只是想确认一下,一个月之后,一切仍然正常.

  • 这完全有效,但你需要小心,因为`brew prune`将删除`/ usr/local/etc/my.cnf.d`.修复是在'brew prune`之后手动更换它,只是想提出一个单挑. (2认同)

Ale*_*lli 5

这里的解决方案都没有帮助,我必须这样做:

安装后步骤未成功完成MySQL Mac OS Sierra

简而言之,

  • 我备份了该文件夹 /usr/local/var/mysql,然后将其删除
  • 删除Mariadb brew remove mariadb
  • 重新安装了Mariadb brew install mariadb
  • brew services start mariadb

之后,我可以访问 mysql -u root