macOS brew 安装两个版本的MySQL
                                                                
                24-05-17 10:59
                字数 3741
                阅读 3347
                                已编辑
                                            
            brew 默认安装的MySQL版本是最新版,但是因为测试需要,得安装一个5.7版本的,brew search mysql之后,看到了mysql@5.7。
==> Formulae
automysqlbackup                         mysql++                                 mysql-client@5.7                        mysql-connector-c++                     mysql@5.7 ✔                             mysqltuner
mysql ✔                                 mysql-client                            mysql-client@8.0                        mysql-search-replace                    mysql@8.0                               qt-mysql于是直接安装5.7版本
brew install mysql@5.7安装一切顺利没什么意外,于是尝试开启一下服务,但是无意外的失败了。
因为刚安装的5.7版本用的cnf配置文件和datadir和以前的8.1用的是同一个,等于5.7占用了以前8.1的配置文件和数据目录,暂且不说8.1的文件能不能用,就是这俩哥们公用一个数据目录页是不能接受的啊。
于是研究怎么在本地安装两个版本MySQL,其实说白了就是两个版本各用各的配置文件和数据目录。
配置文件
拷贝一份出来命名为my@5.7.cnf
cp /opt/homebrew/etc/my.cnf /opt/homebrew/etc/my@5.7.cnf然后修改下配置文件
# 注释掉这一行(如果有)
#mysqlx-bind-address = 127.0.0.1
# 因为要两个MySQL共存,同时启用,所以要修改下5.7版本的端口号和socket
port = 3307
socket = /tmp/mysql.sock2配置文件的改动就这些
数据目录
这部分因为我安装5.7的时候没有用了以前8.1的数据目录,并没有创建5.7自己的目录,所以得先初始化下这个目录
# 先把目录创建出来(也可能不用手动创建,我没试)
mkdir /opt/homebrew/var/mysql@5.7
# 初始化目录
./mysqld --defaults-file=/opt/homebrew/etc/my@5.7.cnf --initialize --user=mysql --datadir=/opt/homebrew/var/mysql@5.7 --basedir=/opt/homebrew/opt/mysql@5.7brew service修改
因为要靠brew管理MySQL的启用和停止,所以还得修改下brew相关脚本
主要是两个文件
- /opt/homebrew/opt/mysql@5.7/homebrew.mysql@5.7.service
- /opt/homebrew/opt/mysql@5.7/homebrew.mxcl.mysql@5.7.plist
homebrew.mysql@5.7.service修改如下
[Unit]
Description=Homebrew generated unit for mysql@5.7
[Install]
WantedBy=default.target
[Service]
Type=simple
ExecStart=/opt/homebrew/opt/mysql@5.7/bin/mysqld_safe --defaults-file=/opt/homebrew/etc/my@5.7.cnf --datadir\=/opt/homebrew/var/mysql@5.7
Restart=always
WorkingDirectory=/opt/homebrew/var/mysql@5.7homebrew.mxcl.mysql@5.7.plist修改如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>KeepAlive</key>
    <true/>
    <key>Label</key>
    <string>homebrew.mxcl.mysql@5.7</string>
    <key>LimitLoadToSessionType</key>
    <array>
        <string>Aqua</string>
        <string>Background</string>
        <string>LoginWindow</string>
        <string>StandardIO</string>
        <string>System</string>
    </array>
    <key>ProgramArguments</key>
    <array>
        <string>/opt/homebrew/opt/mysql@5.7/bin/mysqld_safe</string>
        <string>--defaults-file=/opt/homebrew/etc/my@5.7.cnf</string>
        <string>--datadir=/opt/homebrew/var/mysql@5.7</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>WorkingDirectory</key>
    <string>/opt/homebrew/var/mysql@5.7</string>
</dict>
</plist>到此如无意外就可以用brew分别启用两个MySQL了。
brew services start mysql
brew services start mysql@5.7
注意
如果安装第二个版本的MySQL时把原先版本的cnf文件和datadir目录污染了,可能需要下面的命令修复
修复datadir
./mysqld --defaults-file=/opt/homebrew/etc/my@5.7.cnf --initialize --user=mysql --datadir=/opt/homebrew/var/mysql@5.7 --basedir=/opt/homebrew/opt/mysql@5.7
./mysqld --defaults-file=/opt/homebrew/etc/my.cnf --initialize --user=mysql --datadir=/opt/homebrew/var/mysql --basedir=/opt/homebrew/opt/mysql这个命令执行后会清空datadir目录,注意提前备份数据,且这个命令会重新生成密码,注意保存。
修复cnf
mysql8.1的配置文件被重置后,pdo连接MySQL可能会报下面的错误
PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password]修复方式
编辑my.cnf在[mysqld]中添加下边的代码
default_authentication_plugin=mysql_native_password参考
1人点赞>
                    
                0 条评论
            
            
                排序方式
                时间
                投票
            
        快来抢占一楼吧
    请登录后发表评论
        
        相关推荐
        
    文章归档
    2025-09
                
                    1 篇
                
            
                    
                2025-08
                
                    7 篇
                
            
                    
                2025-07
                
                    1 篇
                
            
                    
                2025-05
                
                    2 篇
                
            
                    
                2024-11
                
                    1 篇
                
            
                                展开剩余 72 条
                            
                    2024-06
                    
                        1 篇
                    
                
                            
                    2024-05
                    
                        2 篇
                    
                
                            
                    2024-04
                    
                        2 篇
                    
                
                            
                    2024-03
                    
                        2 篇
                    
                
                            
                    2024-01
                    
                        1 篇
                    
                
                            
                    2023-10
                    
                        1 篇
                    
                
                            
                    2023-09
                    
                        1 篇
                    
                
                            
                    2023-08
                    
                        1 篇
                    
                
                            
                    2023-06
                    
                        1 篇
                    
                
                            
                    2023-04
                    
                        1 篇
                    
                
                            
                    2022-12
                    
                        2 篇
                    
                
                            
                    2022-06
                    
                        1 篇
                    
                
                            
                    2022-04
                    
                        4 篇
                    
                
                            
                    2022-03
                    
                        3 篇
                    
                
                            
                    2022-01
                    
                        6 篇
                    
                
                            
                    2021-12
                    
                        2 篇
                    
                
                            
                    2021-11
                    
                        2 篇
                    
                
                            
                    2021-10
                    
                        2 篇
                    
                
                            
                    2021-09
                    
                        1 篇
                    
                
                            
                    2021-08
                    
                        2 篇
                    
                
                            
                    2021-07
                    
                        4 篇
                    
                
                            
                    2021-06
                    
                        1 篇
                    
                
                            
                    2021-05
                    
                        3 篇
                    
                
                            
                    2021-04
                    
                        3 篇
                    
                
                            
                    2021-01
                    
                        2 篇
                    
                
                            
                    2020-11
                    
                        1 篇
                    
                
                            
                    2020-10
                    
                        3 篇
                    
                
                            
                    2020-09
                    
                        2 篇
                    
                
                            
                    2020-08
                    
                        1 篇
                    
                
                            
                    2020-07
                    
                        5 篇
                    
                
                            
                    2020-06
                    
                        5 篇
                    
                
                            
                    2020-05
                    
                        1 篇
                    
                
                            
                    2020-04
                    
                        1 篇
                    
                
                            
                    2020-03
                    
                        2 篇
                    
                
                            
                    2020-02
                    
                        3 篇
                    
                
                            
                    2020-01
                    
                        1 篇
                    
                
                            
                    2019-11
                    
                        5 篇
                    
                
                            
                    2019-10
                    
                        10 篇
                    
                
                            
                    2019-09
                    
                        12 篇
                    
                
                            
                    2019-08
                    
                        17 篇
                    
                
                            
                    2019-07
                    
                        8 篇
                    
                
                            
                    2019-05
                    
                        3 篇
                    
                
                            
                    2019-04
                    
                        8 篇
                    
                
                            
                    2019-03
                    
                        7 篇
                    
                
                            
                    2019-02
                    
                        8 篇
                    
                
                            
                    2019-01
                    
                        5 篇
                    
                
                            
                    2018-12
                    
                        7 篇
                    
                
                            
                    2018-11
                    
                        8 篇
                    
                
                            
                    2018-10
                    
                        4 篇
                    
                
                            
                    2018-09
                    
                        7 篇
                    
                
                            
                    2018-08
                    
                        12 篇
                    
                
                            
                    2018-07
                    
                        9 篇
                    
                
                            
                    2018-06
                    
                        6 篇
                    
                
                            
                    2018-05
                    
                        11 篇
                    
                
                            
                    2018-04
                    
                        18 篇
                    
                
                            
                    2018-03
                    
                        1 篇
                    
                
                            
                    2018-02
                    
                        2 篇
                    
                
                            
                    2018-01
                    
                        10 篇
                    
                
                            
                    2017-12
                    
                        14 篇
                    
                
                            
                    2017-11
                    
                        44 篇
                    
                
                            
                    2017-10
                    
                        13 篇
                    
                
                            
                    2017-09
                    
                        4 篇
                    
                
                            
                    2017-08
                    
                        12 篇
                    
                
                            
                    2017-07
                    
                        5 篇
                    
                
                            
                    2017-06
                    
                        4 篇
                    
                
                            
                    2017-05
                    
                        2 篇
                    
                
                            
                    2017-04
                    
                        3 篇
                    
                
                            
                    2017-03
                    
                        9 篇
                    
                
                            
                    2017-02
                    
                        3 篇
                    
                
                            
                    2017-01
                    
                        2 篇
                    
                
                            
                    2016-12
                    
                        10 篇
                    
                
                            
                    2016-11
                    
                        4 篇
                    
                
                        最新文章
        最受欢迎
    09-04 16:48
                    08-26 17:01
                    08-26 00:10
                    08-16 00:23
                    08-15 16:15
                    13 评论
                    11 评论
                    10 评论
                     
         
                 
     
    