Ubuntu下编译安装Mysql双实例并配置主从复制
2011-12-07 08:31
1036 查看
一.安装前准备
下载Mysql源码包:推荐官方站点http://www.mysql.com/
配置Ubuntu环境
添加mysql用户组和用户:
groupadd mysql
useradd -g mysql mysql
创建安装所需目录
master实例安装目录:
mkdir /opt/mastermysql/
mkdir /opt/mastermysql/data/
slave实例安装目录:
mkdir /opt/slavemysql/
mkdir /opt/slavemysql/data
更改权限:
chown mysql:mysql -R /opt/mastermysql/data
chown mysql:mysql -R /opt/slavemysql/data
二. 安装master实例
将源码包复制到主目录 /root
解压:
cd /root
mkdir mastermysql
tar -xv -f mysql-5.5.18.tar.gz -C ~/mastermysql
进入到源码目录:
cd mastermysql/mysql-5.5.18
编译配置:
cmake -DCMAKE_INSTALL_PREFIX=/opt/mastermysql
-DSYSCONFDIR=/opt/mastermysql/etc
-DMYSQL_DATADIR=/opt/mastermysql/data -DMYSQL_TCP_PORT=3307
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql
-DEXTRA_CHARSETS=all
-DWITH_READLINE=1 -DWITH_SSL=system
-DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
make
make install
安装完成,配置并初始化数据库
make /opt/mastermysql/etc
cp support-files/my-medium.cnf /opt/mastermysql/etc/my.cnf
初始化数据库
chmod 755 scripts/mysql_install_db
scripts/mysql_install_db --user=mysql --basedir=/opt/mastermysql
--datadir=/opt/mastermysql/data
创建管理mysql数据库的shell脚本
mkdir /opt/mysql/init.d
cp support-files/mysql.server /opt/mastermysql/init.d/mysql
赋予shell脚本可执行权限:
chmod +x /opt/mastermysql/init.d/mysql
三. 安装slave实例
将第二步中所有的master字符替换成slave,configure中的DMYSQL_TCP_PORT参数换成3308
四.配置master-slave
启动master-slave实例:
/opt/mastermysql/init.d/mysql start
/opt/slavemysql/init.d/mysql start
配置master
vi /opt/mastermysql/etc/my.cnf
添加:
server-id=1
log-bin=mysql-bin
登陆master实例
/opt/mastermysql/bin/mysql -uroot
创建复制账户
grant replication on *.* repl@localhost identified by '123456'
show master status\G;
记录File,Position的值后面会用到
登陆slave实例
/opt/slavemysql/bin/mysql -uroot
配置master-slave
change master to master_host='127.0.0.1',master_port=3307,master_user='repl',
master_password='123456',master_log_file='上述File的内容’,
master_log_pos='上述Position的内容';
start slave;
五.测试
因为两个数据库都是同一份源代码最新的安装,所以他们数据库的内容是以一样的,也就
不需要同步。 在master上创建表,并插入数据,在slave上查看是否有此表和数据。
六.总结
上述步骤是在本人配置成功后边回忆边写的,难免有疏漏的地方,欢迎大家批评指正。只要
能够明白源码 安装的过程,主从复制便十分简单。
参考资料:
官方文档:http://dev.mysql.com/doc/refman/5.1/zh/replication.html#replication-howto
其他:http://blog.csdn.net/lpfvip2008/article/details/6900396
最近在深入学习mysql,打算向mysql dba方向发展。希望能够和志同道合的朋友共同进步,qq:244236866
email:lpfvip2008@gmail.com 微博:http://weibo.com/u/1900145317
下载Mysql源码包:推荐官方站点http://www.mysql.com/
配置Ubuntu环境
添加mysql用户组和用户:
groupadd mysql
useradd -g mysql mysql
创建安装所需目录
master实例安装目录:
mkdir /opt/mastermysql/
mkdir /opt/mastermysql/data/
slave实例安装目录:
mkdir /opt/slavemysql/
mkdir /opt/slavemysql/data
更改权限:
chown mysql:mysql -R /opt/mastermysql/data
chown mysql:mysql -R /opt/slavemysql/data
二. 安装master实例
将源码包复制到主目录 /root
解压:
cd /root
mkdir mastermysql
tar -xv -f mysql-5.5.18.tar.gz -C ~/mastermysql
进入到源码目录:
cd mastermysql/mysql-5.5.18
编译配置:
cmake -DCMAKE_INSTALL_PREFIX=/opt/mastermysql
-DSYSCONFDIR=/opt/mastermysql/etc
-DMYSQL_DATADIR=/opt/mastermysql/data -DMYSQL_TCP_PORT=3307
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql
-DEXTRA_CHARSETS=all
-DWITH_READLINE=1 -DWITH_SSL=system
-DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
make
make install
安装完成,配置并初始化数据库
make /opt/mastermysql/etc
cp support-files/my-medium.cnf /opt/mastermysql/etc/my.cnf
初始化数据库
chmod 755 scripts/mysql_install_db
scripts/mysql_install_db --user=mysql --basedir=/opt/mastermysql
--datadir=/opt/mastermysql/data
创建管理mysql数据库的shell脚本
mkdir /opt/mysql/init.d
cp support-files/mysql.server /opt/mastermysql/init.d/mysql
赋予shell脚本可执行权限:
chmod +x /opt/mastermysql/init.d/mysql
三. 安装slave实例
将第二步中所有的master字符替换成slave,configure中的DMYSQL_TCP_PORT参数换成3308
四.配置master-slave
启动master-slave实例:
/opt/mastermysql/init.d/mysql start
/opt/slavemysql/init.d/mysql start
配置master
vi /opt/mastermysql/etc/my.cnf
添加:
server-id=1
log-bin=mysql-bin
登陆master实例
/opt/mastermysql/bin/mysql -uroot
创建复制账户
grant replication on *.* repl@localhost identified by '123456'
show master status\G;
记录File,Position的值后面会用到
登陆slave实例
/opt/slavemysql/bin/mysql -uroot
配置master-slave
change master to master_host='127.0.0.1',master_port=3307,master_user='repl',
master_password='123456',master_log_file='上述File的内容’,
master_log_pos='上述Position的内容';
start slave;
五.测试
因为两个数据库都是同一份源代码最新的安装,所以他们数据库的内容是以一样的,也就
不需要同步。 在master上创建表,并插入数据,在slave上查看是否有此表和数据。
六.总结
上述步骤是在本人配置成功后边回忆边写的,难免有疏漏的地方,欢迎大家批评指正。只要
能够明白源码 安装的过程,主从复制便十分简单。
参考资料:
官方文档:http://dev.mysql.com/doc/refman/5.1/zh/replication.html#replication-howto
其他:http://blog.csdn.net/lpfvip2008/article/details/6900396
最近在深入学习mysql,打算向mysql dba方向发展。希望能够和志同道合的朋友共同进步,qq:244236866
email:lpfvip2008@gmail.com 微博:http://weibo.com/u/1900145317
相关文章推荐
- mysql多实例的安装以及主从复制配置
- MySQL单机多实例安装并配置主从复制
- MySQL实现单机多实例安装并配置主从复制
- MySQL单机多实例安装并配置主从复制
- mysql多实例的安装以及主从复制配置
- MySQL单机多实例安装并配置主从复制
- 【转载】MySQL单机多实例安装并配置主从复制
- 【MySQL】源码编译安装和配置MySql 5.5.32(单实例)
- ubuntu 安装mysql 5.5.28 编译安装 innodb 配置
- ubuntu下配置mysql主从复制
- MACOS:安装Ubuntu1604虚拟机实例并配置bitcoin代码编译开发环境
- 源码编译安装 MySQL 5.5.x 主从复制
- win2003 安装2个mysql实例做主从同步服务配置
- Mysql多实例安装+主从复制+读写分离 -学习笔记
- Windows下MySQL多实例/主从复制/重置密码/WordPress主从配置
- MySQL安装与主从复制配置
- window2003安装双mysql实例做主从复制
- 使用spring实现读写分离(mysql主从复制)一:mysql多实例安装
- MYsql编译安装及主从复制
- MySQL-5.5.49安装、多实例、主从复制