设为首页 加入收藏

TOP

MySQL使用mysqld_multi部署单机多实例详细过程(一)
2015-11-21 01:57:04 来源: 作者: 【 】 浏览:0
Tags:MySQL 使用 mysqld_multi 部署 单机 实例 详细 过程

序言:多实例?Why?

?

随着硬件层面的发展,linux系统多核已经是普通趋势,而mysql是单进程多线程,所以先天上对多进程的利用不是很高,虽然5.6版本已经在这方面改进很多,但是也没有达到100%,所以为了充分的利用系统资源,mysql有自己的补充,那就是可以部署多实例,一个实例一个端口。

?

?

1,准备好mysql环境

源码安装mysql参考blog:http://www.2cto.com/database/201407/313004.html,源码包下载地址:http://download.csdn.net/detail/mchdba/7545037

1.1,准备好安装环境

groupaddmysql

useradd-g mysql mysql

?

autoreconf--force --install

libtoolize--automake --force

automake--force --add-missing

?

yuminstall -y libtoolize

yuminstall cmake -y

yuminstall gcc gcc-c++ -y

yuminstall -y ncurses-devel.x86_64

yuminstall -y cmake.x86_64

yuminstall -y libaio.x86_64

yuminstall -y bison.x86_64

yuminstall -y gcc-c++.x86_64

yuminstall make -y

?

1.2,创建mysql编译根目录

mkdir-p /usr/local/mysql

?

1.3,解压缩源码

tar -xvf mysql-5.6.12.tar.gz

cd mysql-5.6.12

?

1.4,编译安装

timecmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-DMYSQL_DATADIR=/home/data/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1-DMYSQL_UNIX_ADDR==/usr/local/mysql/mysql.sock -DMYSQL_USER=mysql-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

?

由于time make耗时比较长,所以事先已经安装好

timemake

timemake install

?

?

2,准备第一个实例3307

?

2.1建立好目录

mkdir /usr/local/mysql3307

chown -R mysql.mysql /usr/local/mysql3307/

?

mkdir -p /home/data/mysql3307/data

chown -R mysql.mysql /home/data/mysql3307

chown -R mysql.mysql/home/data/mysql3307/data

?

mkdir -p /home/data/mysql3307/binlog

chown -R mysql.mysql /home/data/mysql3307

?

mkdir -p /home/data/mysql3307/relay_log/

chown -R mysql.mysql /home/data/mysql3307/

?

?

2.2 配置文件

[mysqld_multi]

mysqld = /usr/local/mysql/bin/mysqld_safe

mysqladmin =/usr/local/mysql/bin/mysqladmin

log =/home/mysql/mydata/log/mysqld_multi.log

?

[mysqld1]

socket = /usr/local/mysql3307/mysql.sock

port = 3307

pid-file = /usr/local/mysql3307/mysqld.pid

datadir = /home/data/mysql3307/data

?

log_bin=/home/data/mysql3307/binlog

server-id = 1230

relay_log =/home/data/mysql3307/relay_log/mysql-relay-bin

log_slave_updates = 1

read_only = 0

?

innodb_buffer_pool_size = 128M

innodb_flush_log_at_trx_commit = 0

2.3 初始化数据库

/usr/local/mysql/scripts/mysql_install_db--user=mysql --basedir=/usr/local/mysql --datadir=/home/data/mysql3307/data

?

----------------------------------------------------------------------------------------------------------------
<版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!>
原博客地址: http://blog.csdn.net/mchdba/article/details/45798139
原作者:黄杉 (mchdba)
----------------------------------------------------------------------------------------------------------------

3,准备第二个实例3308

3.1 建立好目录

mkdir /usr/local/mysql3308

chown -R mysql.mysql /usr/local/mysql3308/

?

mkdir -p /home/data/mysql3308/data

chown -R mysql.mysql /home/data/mysql3308

chown -R mysql.mysql/home/data/mysql3308/data

?

mkdir -p /home/data/mysql3308/binlog

chown -R mysql.mysql /home/data/mysql3308

?

mkdir -p /home/data/mysql3308/relay_log/

chown -R mysql.mysql /home/data/mysql3308/

?

?

3.2 配置文件

[mysqld2]

socket = /usr/local/mysql3308/mysql.sock

port = 3308

pid-file = /usr/local/mysql3308/mysqld.pid

datadir = /home/data/mysql3308/data

?

log_bin=/home/data/mysql3308/binlog

server-id = 2230

relay_log =/home/data/mysql3308/relay_log/mysql-relay-bin

log_slave_updates = 1

read_only = 0

?

?

innodb_buffer_p

首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Mysql中中文乱码的解决 下一篇最简单的11gActiveDataGuard(ADG)..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: