多个数据文件 mysql_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;
~~~
多个数据文件 mysql_mysql多实例(多个配置文件方式)相关推荐
- 有了金刚钻,不惧瓷器活 | 在数据文件上轻松使用SQL
SQL,在数据处理和分析领域基本上类似"普通话"的地位,几乎是一项必备的能力,但是要使用SQL,又离不开关系数据库系统,也就是RDBMS,这就好比普通话主要还是得在中国说才管用.当 ...
- 有了金刚钻,不惧瓷器活 | 在数据文件上轻松使用 SQL
SQL,在数据处理和分析领域基本上类似"普通话"的地位,几乎是一项必备的能力,但是要使用 SQL,又离不开关系数据库系统,也就是 RDBMS,这就好比普通话主要还是得在中国说才管用 ...
- Oracle数据文件、用户、schema、实例
接上一篇关于Oracle的表空间.数据文件.用户的随笔,我凭自己的认识又画了一张关于数据文件.用户.schema.实例的关系图,不对的地方还请各位指正. 注:1.改变用户的缺省schema:alter ...
- java http 表单提交_java模仿http表单提交数据(含文件上传)实例源码
[实例简介]java模仿http表单提交数据.模仿http表单上传文件示例 [实例截图] [核心代码] package com.snca.cloudsign.main; import java.io. ...
- mysql c++ 存数组,c++读取数据文件到数组的实例
在刷题过程中,遇到的读取文件问题,只是记录自己的问题,新手~ 如果在一个txt文件当中有以下数据 1 2 3 4 5 6 7 8 9 10 1.如果我们只是简单将这些数据保存在一个数组中: #incl ...
- 腾讯云服务器文件怎么恢复吗,实战腾讯云镜像备份恢复云服务器实例提取网站数据文件...
本来这个问题是准备今天操作的,但是担心今天要陪伴孩子出去玩,所以就在昨天晚上给客户搞定.这个网友的问题是服务器到期,然后找腾讯云客服备份镜像,但是他服务器已经到期删除,但是镜像好在还在的,所以我准备帮 ...
- java 格式化json_JAVA 格式化JSON数据并保存到json文件中的实例
使用fastjson格式化json数据并保存到文件 /** * 将JSON数据格式化并保存到文件中 * @param jsonData 需要输出的json数 * @param filePath 输出的 ...
- SpringBoot+Mysql+MDUI实现数据的增删改查和列表操作及单,多文件上传实例
SpringBoot+Mysql+MDUI实现数据的增删改查和列表操作及单,多文件上传实例 开源地址:https://gitee.com/jfkjrym/demo.git evan原创内容!evan原 ...
- python对文本数据进行采样_Python对wav文件的重采样实例
例如从2channel,4.41k hz 重采样到 1 channel,16k hz def downsampleWav(src, dst, inrate=44100, outrate=16000, ...
最新文章
- 深度学习 Neural Style 之TensorFlow实践
- oracle数据库从关闭到启动,Oracle数据库的启动和关闭详细过程
- ajax隐藏button,jquery下的ajax应用-form和button触发
- 编php矩阵求和,PHP二维数组如何求和?
- 信息安全工程师笔记-综合知识冲刺(二)
- STM32的EXTI相关学习笔记
- linux mysql怎么建数据库用户,Linux MySQL新建用户
- POI中设置Excel单元格格式样式(居中,字体,边框等)
- ucserver admin.php,如何修改discuz管理员密码以及Ucenter初始管理密码
- 黑苹果 hackintosh 声卡驱动
- ArduinoUNO实战-第二十二章-红外遥控实验
- 各种把妹法——太强大了!
- 直播源php代理用什么主机,流媒体直播系统_流媒体直播php源码_流媒体直播源码...
- 网银“交易密码丢失U盾作废”引质疑
- 「笔耕不辍」悲观锁和乐观锁的区别以及实现方式
- python实现星号打印出金字塔
- Unknown label type: ‘continuous
- oracle dbview用户,关于SQLRecoverableException问题的排查和分析
- python里美元怎么表示_说说 Python 正则表达式中的插入字符、美元字符
- python数据分析 - T检验与F检验:二组数据那个更好?(一)
热门文章
- 做自适应网站专业乐云seo_什么叫网站优化-网站建设-SEO优化
- autowired的对象为null_spring-为什么我的@Autowired对象为null?
- php for 脚本,php for循环脚本。
- java obervable_RxJava中Observable,Completable和Single之间有什么区别
- 没有计算机的一天英语作文带翻译,初一英语作文我的一天带翻译
- java 获取oracle表结构_获取Oracle中所有表的列表?
- Win7文件夹属性没有共享标签页的解决方法
- 如何在Chrome浏览器中创建账户?
- Video在网页和移动端无法自动播放问题??
- linux下用c语言写黄金矿工,C语言写的黄金矿工O(∩_∩)O---初稿,能玩了