1.安装依赖包
1 |
yum -y install gcc* gcc-c++* cmake make bison autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool* |
2.创建用户和组
1 2 |
groupadd mysql useradd -M -s /sbin/nologin -g mysql mysql |
3.创建数据存放目录,修改权限
1 2 |
mkdir -p /data/mysql chown -R mysql.mysql /data/mysql |
4.mysql5.5以上版本使用cmake编译
1 2 3 4 5 6 7 8 9 10 11 12 13 |
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/data/mysql \ -DMYSQL_TCP_PORT=3306 \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DMYSQL_USER=mysql \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DEXTRA_CHARSETS=all \ -DWITH_READLINE=1 \ -DWITH_EMBEDDED_SERVER=1 \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 make&&make install |
5.修改安装目录的所属权限
1 |
chown -R mysql.mysql /usr/local/mysql |
6.复制配置文件
1 |
cp support-files/my-medium.cnf /etc/my.cnf |
7.添加系统服务
1 2 3 |
cp support-files/mysql.server /etc/rc.d/init.d/mysqld chmod +x /etc/init.d/mysqld chkconfig --add mysqld |
8.初始化数据库
1 |
./scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/ --user=mysql |
9.设置数据库密码
1 2 |
service mysqld start mysqladmin -uroot password 'mysql' |
10.主数据库操作
授权给从数据库,查询主数据库状态,记录下 File 及 Position 的值,在后面进行从服务器操作的时候需要用到。
1 2 |
mysql>grant replication slave on *.* to 'root'@'192.168.200.11' identified by '123456'; mysql>show master status; |
11.从数据库操作
1 2 3 |
mysql>change master to master_host='192.168.200.10', master_user='root', master_password='123456', master_log_file='mysql-bin.000005', master_log_pos=262; mysql>start slave; mysql>show slave status \G |
看到以下信息,说明配置成功
12.如果主数据库已经有应用数据,在主从复制开始前,执行以下操作
(1)主数据库进行锁表操作,不让数据再进行写入动作
mysql> FLUSH TABLES WITH READ LOCK;
(2)查看主数据库状态
mysql> show master status;
(3)复制数据文件
将主服务器的数据文件(整个/data/mysql目录)复制到从服务器,建议通过tar归档压缩后再传到从服务器解压。
(4)取消主数据库锁定
mysql> UNLOCK TABLES;
再开启主从复制
13.添加测试数据,看是否同步到从数据库
在主数据库操作
1 2 3 4 |
mysql>create database school; mysql>use school; mysql>create table tb_user(id int(6),name char(10)); mysql>insert into tb_user values(01,'tom'); |
在从数据库上看到从主数据库添加的数据,主从复制同步成功