MySql Mac配置单机多实例

基础环境

通过 .dmg 包安装的MySql
安装目录

/usr/local/mysql-8.0.18-macos10.14-x86_64
/usr/local/mysql

其实两个目录内的文件是相同的,mysql是mysql-8.0.18-macos10.14-x86_64 的快捷文件夹
端口: 3306

查找/创建my.cnf文件

my.cnf 文件是MySql的配置文件
1、查看配置文件路径

$ mysql --verbose --help|grep -A 1 'Default options'
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 

Mac 版本Mysql应该都没有 my.cnf 文件,如果你的存在my.cnf文件那你就复制一份里面的内容

2、创建 my-master.cnf 和 my-slave.cnf 文件

直接使用vim创建编辑

$ sudo vi /etc/my-master.cnf
>>>编辑
[client]
port = 3308
socket = /usr/local/mysql-master/tmp/mysql.sock

[mysqld]
user = root
port = 3308
socket = /usr/local/mysql-master/tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql-master/data

[mysqld_safe]
log-error = /usr/local/mysql-master/data/mysqld.local.err
pid-file = /usr/local/mysql-master/data/mysqld.local.pid

:wq 保存即可
以上配置文件需要两个文件夹,使用命令行创建

$ sudo mkdir -p /usr/local/mysql-master/{data,tmp}

设置文件夹访问权限(固定写法)。不设置权限…/mysql-master/tmp/mysql.sock等文件在初始化的时候不能写入。

$ sudo chown -R mysql:mysql /usr/local/mysql-master

初始化

$ sudo mysqld --defaults-file=/etc/my-master.cnf --initialize
....
返回默认密码:wna*LOC7A6YC
[Server] A temporary password is generated for root@localhost: wna*LOC7A6YC

1、如果提示:[Server] Setting lower_case_table_names=2 because file system for /usr/local/mysql-master/data/ is case insensitive
你就在配置文件内添加:lower_case_table_names=2
2、如果你是重复初始化配置文件,需要清空/usr/local/mysql-master/data文件夹内的文件
3、网上很多帖子初始化命令后面加 --user=root --datadir=/usr/local/mysql-master/data 等等一堆。真心不用,配置文件已经配置好了,如果有不同可以后面跟参数。

启动数据库

sudo mysqld_safe --defaults-file=/etc/my-master.cnf &

关闭数据库

mysqladmin -uroot -p -S /usr/local/mysql-master/tmp/mysql.sock shutdown

登录进入

Sock登录

$ mysql -u root -p -S /usr/local/mysql-master/tmp/mysql.sock

端口登录

$ mysql -uroot -p123456 -h127.0.0.1 -P3308

1、mysql.sock文件是在初始化启动的时候生成的,同一个用户名不同的sock进入不同的数据库
2、由于我们是多实例登录进入必须指定sock连接,如果不指定默认==/tmp/mysql.sock==
3、如果报错mysql.sock文件找不到,应该是在初始化或启动服务步骤错了。

重置密码

mysql> ALTER USER USER() IDENTIFIED BY '123456';

查端口号

mysql> show global variables like 'port';

点赞👍

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值