在macOS上安装MySQL数据库有很多种方法,比如在docker中安装,这个我两年前写过一篇叫《Docker中安装MySQL》有介绍过了,这里就不再累赘了,这里再介绍用DMG和Homebrew两种方法来安装MySQL。
DMG安装MySQL
首先到官网下载并打开dmg安装包,需要注意的是要根据自己机器选择对应的版本,M系统芯片的要下带ARM的DMG,尽量按教程操作不然会出现各种错误。
点允许后来到介绍界面。
到许可界面点继续被提示必须同意软件许可协议条款才能继续安装。
同意许可后直接跳到安装类型。
当你点“更改安装位置…”后,你会发现无法修改安装目录,只能继续往下。
不过可以点左下角的“自定义”选择要安装的模块,建议默认。
接着解锁即可开始安装。
接着确认配置,选择合适的密码加密方式,Use Strong Password Encryption是基于SHA256、MySQL 8才支持的更强认证方式,连接器和客户端必须支持这种方式才能连接MySQL服务器;Use Legacy Password Encryption适合5.x的连接器和客户端。
接着设置root密码。
完成安装。
然后在终端输入下面的查看版本命令,打印出版本号则安装成功。
mysql --version;
接着输入“mysql -u root -p”用刚刚设置的密码登录进来,也可用工具连localhost访问MySQL数据库服务器。
如果要用IP访问得先授权不然会报下面的错误,因为默认只允许访问localhost主机上的MySQL数据库。
[HY000][1130] null, message from server: "Host '192.168.1.3' is not allowed to connect to this MySQL server".
有改user表和GRANT授权两种方式开启远程访问。
1.改user表
mysql -u root –p123456
mysql>use mysql;
mysql>update user set host = ‘%’ where user = ‘root’;
mysql>select host, user from user;
mysql>FLUSH RIVILEGES
2.GRANT授权
访问任何主机上的MySQL服务器:
GRANT ALL PRIVILEGES ON . TO '账号名'@'%' IDENTIFIED BY '账号对应的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;
指定访问IP为192.168.1.4的主机上的MySQL服务器:
GRANT ALL PRIVILEGES ON . TO '账号名'@'192.168.1.4' IDENTIFIED BY '账号对应的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;
指定访问IP为192.168.1.4的主机上的MySQL服务器上的某个数据库demo
GRANT ALL PRIVILEGES ON demo.* TO 'myuser'@'192.168.1.4' IDENTIFIED BY '账号对应的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;
如果你没有按照我上面的教程操作,在输入“mysql –version;”查版本时可能会报“command not found”,有两种解决方案,一种就是逐个错误慢慢排解,另一种就是卸载后重装,自己看着办吧😂。
要停止和卸载服务器可以到“系统偏好设置…”找到MySQL。
如果在上面安装类型只选择“MySQL Server”则找不到MySQL,只能用下面的命令手动删除了,可以先逐条查看有没有对应的东西,没有就不用执行。
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/MySQL*
vim /etc/hostconfig (删掉这个: MYSQLCOM=-YES-)
rm -rf ~/Library/PreferencePanes/MySQL*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*
Homebrew安装MySQL
没有或者不知道怎么安装brew的可以看我之前写的《苹果电脑macOS搭brew环境》。
记得先“brew update”更新Homebrew,不然可能会报错“Error: mysql: no bottle available!”
先用“brew search mysql”搜索看有哪些版本,可以看到已经支持到8.0.28,用“brew install mysql”安装(若要安装其它版本则把mysql改成如“mysql@5.7”),若要卸载用“brew uninstall mysql”。
We've installed your MySQL database without a root password. To secure it run:
mysql_secure_installation
MySQL is configured to only allow connections from localhost by default
To connect run:
mysql -uroot
To restart mysql after an upgrade:
brew services restart mysql
Or, if you don't want/need a background service you can just run:
/usr/local/opt/mysql/bin/mysqld_safe --datadir=/usr/local/var/mysql
安装完按提示配置数据库信息,如果输入“mysql_secure_installation”要输入密码并且提示“Error: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)”,则可以通过“brew services restart mysql”重启数据库。正常输入“mysql_secure_installation”后会提示设置密码等信息的。
设置完可以用“mysql -uroot -p”连接数据库,也可以用工具连。
可以通过“brew services start mysql”启动数据库、“brew services stop mysql”关闭数据库。
到此就讲完在macOS上安装MySQL了,其它操作按平时的做即可。
历史上的今天:
展开阅读全文