MySQL主从复制
MySQL多实例数据库
MySQL一主多从架构
MySQL双主双从架构

MySQL多实例数据库搭建

MySQL多实例是指安装MySQL之后,我们可以在一台Linux服务器上同时启动多个MySQL数据库(实例),不需要安装多个MySQL;如果是有多台Linux服务器,那么我们需要每台服务器都分别安装MySQL;

在一台Linux服务器上启动多个MySQL数据库(实例),通过为各个数据库实例配置独立的配置文件来实现,即每个数据库实例有自己单独的配置文件;

MySQL多实例数据库搭建

1、在MySQL安装主目录下创建/data/3307, /data/3308, /data/3309, /data/3310四个目录;

2、执行数据库初始化,在MySQL的/usr/local/mysql-5.7.18/bin目录下执行命令:

./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3307 --user=mysql
./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3308 --user=mysql
./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3309 --user=mysql
./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3310 --user=mysql
其中 initialize-insecure 表示不生成MySQL数据库root用户的随机密码,即root密码为空;

3、在/data/3307, /data/3308, /data/3309, /data/3310 四个目录下分别创建一个my.cnf文件;

4、配置四个MySQL数据库服务的my.cnf文件

[client]
port        = 3307
socket      = /usr/local/mysql-5.7.18/data/3307/mysql.sock
default-character-set=utf8

[mysqld]
port    = 3307
socket  = /usr/local/mysql-5.7.18/data/3307/mysql.sock
datadir = /usr/local/mysql-5.7.18/data/3307
log-error = /usr/local/mysql-5.7.18/data/3307/error.log
pid-file = /usr/local/mysql-5.7.18/data/3307/mysql.pid

character-set-server=utf8
lower_case_table_names=1
autocommit = 1
至此多数据库实例就搭建好了;