使用Macports设置MySQL 5.6

cov*_*iex 8 mysql macos installation macports

MacOS 10.10,最新的macports.我想在端口3306上获取mysql 5.6.

1)安装

port install mysql56-server mysql56
Run Code Online (Sandbox Code Playgroud)

之后安装mysql56@5.6.22_0

which mysql
Run Code Online (Sandbox Code Playgroud)

要么

which mysql56
Run Code Online (Sandbox Code Playgroud)

没有回报.

所以第一个问题是mysql客户端在哪里?

2)配置

安装脚本建议这样做

sudo -u _mysql /opt/local/lib/mysql56/bin/mysql_install_db
Run Code Online (Sandbox Code Playgroud)

然后

/opt/local/lib/mysql56/bin/mysqladmin -u root password 'new-password'
Run Code Online (Sandbox Code Playgroud)

要求运行服务器,我启动它

cd /opt/local ; /opt/local/lib/mysql56/bin/mysqld_safe &
Run Code Online (Sandbox Code Playgroud)

然后mysqladmin抱怨socket,我在/opt/local/etc/mysql56/macports-default.cnf中评论--skip-networking,然后命令就行了.然后

/opt/local/lib/mysql56/bin/mysqladmin -u root -h bp.local password 'new-password'
Run Code Online (Sandbox Code Playgroud)

返回

error: 'Host '10.0.1.9' is not allowed to connect to this MySQL server'
Run Code Online (Sandbox Code Playgroud)

没有mysql客户端,我真的不知道该怎么做.而且我有点卡住了.有什么建议?

nev*_*nic 16

MacPorts以不会相互冲突的方式安装MySQL及其衍生产品,并且可以同时安装.这包括将mysql二进制文件放在非标准路径中.您可以使用找到二进制文件port contents mysql56 | grep -E '/s?bin/'.MacPorts还附带了一个选择机制,可以为您提供方便的链接/opt/local/bin.要使MySQL 5.6成为默认值,请运行sudo port select --set mysql mysql56.

要启动服务器,您可以使用MacPorts的守护程序控制功能(这是sudo port load mysql56-server启动的前端):将启动服务器并确保它在重新启动后运行,sudo port unload mysql56-server将撤消该服务器并停止服务器.

--skip-networking是默认使运行多个版本的MySQL并排侧可能.有关port notes mysql56更多信息,请参阅

您可以使用unix套接字连接到MacPorts的MySQL,但我不记得它的顶部路径.不过我确信http://trac.macports.org/wiki/howto/MAMP有它们.要连接到本地服务器,您应该使用localhost127.0.0.1代替bp.local,它显然解析为私有IP地址,因此通过操作系统的IP堆栈,而不是通过环回接口.