# mysql主从复制实例 --- 我们在本地搭建主从服务器,首先得启动多个Mysql实例 默认安装的Mysql配置再/etc/mysql/my.cnf,端口3306 那下面我们在启动一个3301端口的实例 复制一份配置 cp /etc/mysql/my.cnf my_3301.cnf 创建一个给3301实例使用的文件夹 mkdir /home/mysql/3301 chown mysql:mysql /home/mysql/ -R 修改配置 [client] port = 3301 socket = /home/mysql/3301/mysqld.sock [mysqld_safe] socket = /home/mysql/3301/mysqld.sock [mysqld] user = mysql pid-file = /home/mysql/3301/mysqld.pid socket = /home/mysql/3301/mysqld.sock port = 3301 basedir = /usr datadir = /var/lib/mysql_3301 tmpdir = /tmp 初始化数据库 sudo mysql_install_db --defaults-file=/etc/mysql/my_3301.cnf --basedir=/usr/ --datadir=/var/lib/mysql_3301 --user=mysql 5.启动MySql, 要指定.cnf文件启动 sudo mysqld_safe --defaults-file=/etc/mysql/my_3301.cnf --user=mysql 看看我们的成果: [/home/mysql]$ ps aux|grep 3301 root 14554 0.0 0.0 75556 1232 ? S 11:26 0:00 sudo mysqld_safe --defaults-file=/etc/mysql/my_3301.cnf --user=mysql root 14555 0.0 0.0 4440 628 ? S 11:26 0:00 /bin/sh /usr/bin/mysqld_safe --defaults-file=/etc/mysql/my_3301.cnf --user=mysql mysql 15159 0.0 0.2 698928 42592 ? Sl 11:28 0:14 /usr/sbin/mysqld --defaults-file=/etc/mysql/my_3301.cnf --basedir=/usr --datadir=/var/lib/mysql_3301 --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/home/mysql/3301/log/error.log --pid-file=/home/mysql/3301/mysqld.pid --socket=/home/mysql/3301/mysqld.sock --port=3301 lidongw+ 15189 0.0 0.0 107352 1900 pts/1 S+ 11:28 0:00 mysql -S /home/mysql/3301/mysqld.sock -uroot -px xxxx lidongw+ 27141 0.0 0.0 18304 1024 pts/13 S+ 18:42 0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=.cvs --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn 3301 登录mysql的shell mysql -S /home/mysql/3301/mysqld.sock -uroot -p123456 远程的加上ip 端口 mysql -S /home/mysql/3301/mysqld.sock -uroot -p123456 -h localhost -P 3307 如果上面启动有问题,那就是apparmor的配置问题: vim /etc/apparmor.d/usr.sbin.mysqld 添加新的Mysql实例上面配置的datadir目录进去,这样才能让实例正确找到目录 /var/lib/mysql_3301/ r, /var/lib/mysql_3301/** rwk, 保存重启 service apparmor restart 至此,已经成功运行多一个监听3301的MySql实例,可以为Mysql复制做准备 ###### tags: `mysql`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up