mysql多实例(多个配置文件方式)
CleverCode最近在研究MySQL的多实例,发现有两种方式:
第一种是使用多个配置文件启动不同的进程来实现多实例。这种方式的优势逻辑简单,配置简单,缺点是管理起来不太方便。
第二种是通过官方自带的mysqld_multi。使用单独的配置文件来实现多实例,这种方式定制每个实例的配置不太方面,优点是管理起来很方便,集中管理。
推荐使用多个配置文件方式。这种实际应用中好,耦合性不强,配置方便,特别是主从复制的时候。
这里分两次介绍,先介绍多个配置文件方式。
1 环境介绍:
1)简介
mysql 版本:mysql-5.5.27
cmake:cmake-2.8.8
操作系统:CentOS6.5
mysql实例数:3个
实例占用端口分别为:3306、3307、3308
2)本次安装所有的软件资源包下载地址
http://download.csdn.net/detail/clevercode/8662323
2 配置防火墙
1) 在防火墙配置文件中添加3306,3307,3308(允许3306,3307,3308端口通过防火墙)
# vi /etc/sysconfig/iptables #编辑防火墙配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3307 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3308 -j ACCEPT
2)重启防火墙
# /etc/init.d/iptables restart #最后重启防火墙使配置生效
3 安装cmake
解压
# cd /usr/local/src/mysql
# tar zxvf cmake-2.8.8.tar.gz
# cd cmake-2.8.8
配置
# ./configure
编译
# make
安装
# make install
查看版本
# cmake -version
4 安装Mysql
1) 创建用户
# groupadd mysql #添加mysql组
# useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
2) 解压
# cd /usr/local/src/mysql
# tar zxvf mysql-5.5.27.tar.gz
# cd mysql-5.5.27
4) 配置
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
PS: cmake的时候,参数可以不用那么多,只要一个-DCMAKE_INSTALL_PREFIX=/usr/local/mysql就行了,我们可以在 my.cnf里面配置。[mysqld]中的内容,看看你copy后的my.cnf有没有这些设置,有就不用了在设置了。
5)编译
# make
6)安装
# make install
5 初始化数据库
# mkdir -p /data0/dbdata/mysql/3306
# mkdir -p /data0/dbdata/mysql/3307
# mkdir -p /data0/dbdata/mysql/3308
# chown -R mysql:mysql /data0/dbdata/mysql/3306
# chown -R mysql:mysql /data0/dbdata/mysql/3307
# chown -R mysql:mysql /data0/dbdata/mysql/3308
# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data0/dbdata/mysql/3306 --user=mysql
# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data0/dbdata/mysql/3307 --user=mysql
# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data0/dbdata/mysql/3308 --user=mysql
6 修改配置文件
# cp /usr/local/mysql/support-files/my-huge.cnf /data0/dbdata/mysql/3306/my.cnf
# cp /usr/local/mysql/support-files/my-huge.cnf /data0/dbdata/mysql/3307/my.cnf
# cp /usr/local/mysql/support-files/my-huge.cnf /data0/dbdata/mysql/3308/my.cnf
# vi /data0/dbdata/mysql/3308/my.cnf #编辑配置文件(3306,3307同理)
#在 [client]部分修改一下数据
port = 3308
socket = /tmp/mysql3308.sock
#在 [mysqld] 部分修改数据
port = 3308
socket = /tmp/mysql3308.sock
datadir = /data0/dbdata/mysql/3308 #添加MySQL数据库路径
:wq! #保存退出
7 创建自动启动文件
# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld3306
# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld3307
# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld3308
# chmod 755 /etc/rc.d/init.d/mysqld3306
# chmod 755 /etc/rc.d/init.d/mysqld3307
# chmod 755 /etc/rc.d/init.d/mysqld3308
# vi /etc/rc.d/init.d/mysqld3308 #编辑 (3306,3307同理)
basedir=/usr/local/mysql #MySQL程序安装路径
datadir=/data0/dbdata/mysql/3308 #MySQl数据库存放目录
修改
$bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
变成
$bindir/mysqld_safe --defaults-file="$datadir/my.cnf" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
8 启动3306、3307、3308的mysql
# service mysqld3306 restart
# service mysqld3307 restart
# service mysqld3308 restart
9 查看端口是否监听,如果出现3306,3307,3308则启动正常
# netstat -anp | grep 3308
tcp 0 0 0.0.0.0:3308 0.0.0.0:* LISTEN 2348/mysqld
unix 2 [ ACC ] STREAM LISTENING 10780 2348/mysqld /tmp/mysql3308.sock
10 初始化密码并且授权远程登录(3306,3307同理)
# /usr/local/mysql/bin/mysqladmin -u root password "pwd3308" -S /tmp/mysql3308.sock
# /usr/local/mysql/bin/mysql -uroot -ppwd3308 -S /tmp/mysql3308.sock
mysql> grant all privileges on *.* to 'root'@'%' identified by 'pwd3308' with grant option;
mysql> flush privileges;
本文出自http://blog.csdn.net/clevercode/article/details/47610619
转载于:https://blog.51cto.com/lookingdream/1856715
mysql多实例(多个配置文件方式)相关推荐
- linux mysql多实例启动不了_linux下mysql多实例安装(转)
转自:http://www.cnblogs.com/xuchenliang/p/6843990.html 1.MySQL多实例介绍 1.1.什么是MySQL多实例 MySQL多实例就是在一台机器上开启 ...
- mysql的配置文件几个_mysql多实例(多个配置文件方式)
1)简介mysql 版本:mysql-5.5.27cmake:cmake-2.8.8操作系统:CentOS6.5mysql实例数:3个实例占用端口分别为:3306.3307.33082)本次安装所有的 ...
- mysql 5.7 配置多实例 — 独立配置文件方式
2019独角兽企业重金招聘Python工程师标准>>> 使用独立配置文件来实现 mysql 的单机多实例 一下教程皆以已在 /usr/local 下安装了 mysql 为说明 我们将 ...
- mysql 多实例 独立配置文件_mysql 5.7 配置多实例 — 独立配置文件方式
使用独立配置文件来实现 mysql 的单机多实例 一下教程皆以已在 /usr/local 下安装了 mysql 为说明 我们将在原 3306 实例的基础上新建 3307 和 3308 两个实例 1.创 ...
- mysql多实例(mysqld_multi方式)
以下内容为在学习MYSQL 过程中的实验步骤, mysql多实例(mysqld_multi方式) 1.建立各个实例的目录 [root@mdw ~]# mkdir /mnt/data/mysql/330 ...
- 多个数据文件 mysql_mysql多实例(多个配置文件方式)
CleverCode最近在研究mysql的多实例,发现有两种方式: 第一种是使用多个配置文件启动不同的进程来实现多实例.这种方式的优势逻辑简单,配置简单,缺点是管理起来不太方便. 第二种是通过官方自带 ...
- mysql 多实例 独立配置文件_三、安装配置多实例MYSQL5.6-多独立配置文件方法
三.安装配置多实例MYSQL5.6-多独立配置文件方法 1.准备工作 检查操作系统版本.内核版本.selinux是否关闭.防火墙策略.IP地址.主机名配置.host表配置.yum配置 上传cmake. ...
- mysql多实例安装配置_MySQL多实例安装配置
MySQL进行多实例配置再生产环境中非常常见,比如一些高配置数据库服务器,就会跑多个MySQL实例,借助多实例绑定的方式提高服务器的整体资源利用率.另外在MySQL5.7以上版本还不支持多源复制时,当 ...
- mysql服务实例配置_MySQL多实例配置(一)
MySQL数据库的集中化运维,能够通过在一台MySQL数据库服务器上,部署多个MySQL实例.该功能是通过mysqld_multi来实现.mysqld_multi用于管理多个mysqld的服务进程,这 ...
最新文章
- AngularJS安装配置与基础概要整理(上)
- 马斯克39也火星计划PPT
- java中Hashtable中的t为什么是小写(转)
- 【转载】关于HttpClient 接口方法总结
- 机器学习(part4)--模型评估
- 开单大师(开源可定制的房产管理系统) v3.6.9学习版
- 构建高性能.NET应用之配置高可用IIS服务器-第五篇 IIS常见问题之:工作进程回收机制(中)...
- C语言oo1cpp怎么进,cpp 第八章第7题解决办法
- u-boot的补丁文件patch
- java.util.Arrays$ArrayList addAll报错
- java计算机毕业设计服装连锁店后台管理系统MyBatis+系统+LW文档+源码+调试部署
- 专利申请--权利要求书vs说明书
- 心形函数表达式及合成思路
- 练习一万小时;2000-5000 小时计划和建议;现在开始!---读《异类》后刚好遇到的一篇文章
- 快桃科技居然给我无条件双倍工资!却又整天瞎搞
- 一个程序员的奋斗经历
- 半导体激光芯片商长光华芯完成B轮1.5亿融资,推进三类主营业务战略建设
- python爬取都挺好影视评论,看看大家的共鸣度有多强?
- 计算机小知识——键盘三颗灯含义
- php aco什么意思,红酒ACO是什么意思?