MySQL数据库管理员系统学习(4)的mysql的多实例多启动停止

Mysql 路人甲 147℃ 0评论

MySQL的的多实例配置安装

 一,什么情况下我们会考虑一台物理服务器上部署多个实例,大致有以下几种情况:

1,采用了数据伪分布式架构的原因,而项目启动初期又不一定有那多的用户量,为此先一组物理数据库服务器,但部署多个实例,方便后续迁移;

2,为规避mysql对SMP架构不支持的缺陷,使用多实例绑定处理器的办法(NUMA处理器必须支持,不过现在大部分处理器都支持的!),把不同的数据库分配到不同的实例上提供数据服务;

3,一台物理数据库服务器支撑多个数据库的数据服务,为提高mysql复制的从机的恢复效率,采用多实例部署;

已经为双主复制的mysql数据库服务器架构,想部分重要业务的数据多一份异地机房的热备份,而mysql复制暂不支持多主的复制模式,且不给用户提供服务,为有效控制成本,会考虑异地机房部署一台性能超好的物理服务器,甚至外加磁盘柜的方式,为此也会部署多实例;

4,传统游戏行业的MMO / MMORPG,以及网络Game,每一个服都对应一个数据库,而可能要做很多数据查询和数据订正的工作,为减少维护而出错的概率,也可能采用多实例部署的方式,按区的概念分配数据库;

 二,MySQL的的多实例的介绍

mysqld_multi的被设计为了管理实现多个mysqld的服务进程

 三,配置多实例的mysqld及初始化

1,创建实例的数据文件目录

[根@ TEST4〜]#CD / mysql /下
[根@ TEST4的mysql]#LS
数据
[根@ TEST4的mysql]#的mkdir数据2 /
[根@ TEST4的mysql]#的mkdir数据3 /

2,初始化多实例的MySQL
[根@ TEST4的mysql]#mysql_install_db的–datadir = / mysql的/数据2 / –user = mysqlInstalling

MySQL的系统表…
OK

[根@ TEST4的mysql]#mysql_install_db的–datadir = / mysql的/数据3 / –user = mysqlInstalling的MySQL

系统表…
OK灌装帮助表…
确定
要在引导时启动mysqld,你需要复制
支持-files / mysql.server文件到正确的地方为你的系统
请记住要设置MySQL的root用户的密码!
要这样做,启动服务器,然后发出以下命令:
在/ usr /本地/ MySQL的/斌/ mysqladmin -u root密码“新密码”
在/ usr /本地/ MySQL的/斌/ mysqladmin -u根-h test4.wolf .org的密码,“新密码”
或者你可以运行:
在/ usr /本地/ MySQL的/斌/ mysql_secure_installation
这也将让您去除测试的选项
数据库和默认创建的匿名用户。这是
,强烈建议生产服务器
。请参阅说明手册
你可以开始与MySQL守护程序:
CD的/ usr /本地/ MySQL的; 在/ usr /本地/ MySQL的/斌/ mysqld_safe的&
您可以测试与mysql-test-run.pl MySQL守护程序
光盘的/ usr /本地/ MySQL的/ MySQL的测试; perl的mysql-test-run.pl
请用报告在/ usr /本地/ MySQL的/斌/ mysqlbug脚本邮寄的任何问题!

3,配置的mysqld的多实例的my.cnf文件

(1)配置的my.cnf文件详解

1
2
3
4
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
三十
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[根@ TEST4〜]#猫的/etc/my.cnf
[mysqld_multi的]
mysqld的=的/ usr /本地/ MySQL的/斌/ mysqld_safe的
mysqladmin =的/ usr /本地/ MySQL的/斌/ mysqladmin
用户=测试
密码=测试
[客户]
#password口令= your_password
端口= 3306
插座= /tmp/mysql.sock
[mysqld3306]
端口= 3306
插座= /tmp/mysql3306.sock
跳过外部锁定
key_buffer_size的16M =
max_allowed_packet的= 1M
table_open_cache = 64
sort_buffer_size的值= 512K
的net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
登录斌= mysql的斌
binlog_format =混合
DATADIR = / mysql的/数据
服务器ID = 1
[mysqld3307]
端口= 3307
插座= /tmp/mysql3307.sock
跳过外部锁定
key_buffer_size的16M =
max_allowed_packet的= 1M
table_open_cache = 64
sort_buffer_size的值= 512K
的net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
登录斌= mysql的斌
binlog_format =混合
DATADIR = / mysql的/ DATA2
服务器ID = 1
[mysqld3308]
端口= 3308
插座= /tmp/mysql3308.sock
跳过外部锁定
key_buffer_size的16M =
max_allowed_packet的= 1M
table_open_cache = 64
sort_buffer_size的值= 512K
的net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
登录斌= mysql的斌
binlog_format =混合
DATADIR = / mysql /下DATA3
服务器ID = 1
[mysqldump的]
max_allowed_packet的16M =
[MySQL的]
没有自动翻版
[myisamchk的]
key_buffer_size的20M =
sort_buffer_size的值= 20M
的read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy的]
互动超时

(2)启动多实例

[根@ TEST4〜]#在/ usr /本地/ MySQL的/斌/ mysqld_multi的–defaults文件=的/ etc / my.cnf中启动3308

[根@ TEST4〜]#的ps aux | grep的3308
根4887 0.0 0.2 106012 1348点/ 1个S 14点57 0:00 / bin / sh的在/ usr /本地/ MySQL的/斌/ mysqld_safe的–port = 3308 –socket =的/ tmp / mysql3308.sock –skip-外部锁定–key_buffer_size = 16M –max_allowed_packet = 1M –table_open_cache = 64 –sort_buffer_size = 512K –net_buffer_length = 8K –read_buffer_size = 256K –read_rnd_buffer_size = 512K – -myisam_sort_buffer_size = 8M –log斌= mysql的斌–binlog_format =混合–datadir = / mysql /下DATA3 –server-ID = 1
的MySQL 0.0 5034 1.3 6668 125304 PTS / 1 SL 14时57分0:00 / USR /本地/ mysql /下的libexec / mysqld的–basedir =的/ usr /本地/ MySQL的–datadir = / mysql /下DATA3 –user = mysql的–skip-外部锁定–key_buffer_size = 16M –max_allowed_packet = 1M – -table_open_cache = 64 –sort_buffer_size = 512K –net_buffer_length = 8K –read_buffer_size = 256K –read_rnd_buffer_size = 512K –myisam_sort_buffer_size = 8M –log斌= mysql的斌–binlog_format =混合–server-ID = 1 –log错误= / mysql的/数据3 / test4.wolf.org.err –pid文件= / mysql的/数据3 / test4.wolf.org.pid –socket = / tmp目录/ mysql3308.sock –port = 3308

(3)连接mysql的多实例

[根@ TEST4〜]#mysql的-S /tmp/mysql3308.sock
欢迎MySQL的监测。命令终止与; 。或者一个\ g
你的MySQL连接ID为1
Server版本:70年5月1日对数源分布版权所有(C)2000,2013,Oracle和/或其附属公司。保留所有权利。Oracle是Oracle公司和/或其注册商标分支机构。其他名称可能是其各自的商标拥有者。键入’帮助;“ 为帮助或’\ H’。键入’\ c’来清除当前输入语句。MySQL的>节目数据库; + ——————– + | 数据库| + ——————– + | INFORMATION_SCHEMA | | MySQL的| | 测试| + ——————– + 3行中集合(0.01秒)   (4)启停多实例musql

由于是多实例的方式来管理mysql,所以暂时不可以通过如下方式来停止数据库

[根@ TEST4〜]#在/ usr /本地/ MySQL的/斌/ mysqld_multi的–defaults文件=的/ etc / my.cnf中停止3308

真正的关闭多实例的MySQL的方法是通过配置在/etc/my.cnf中中的测试用户,

[根@ TEST4〜]#mysql的-S /tmp/mysql3308.sock
的mysql> GRANT SHUTDOWN ON * * TO’测试’@’localhost’的IDENTIFIED BY“TEST”WITH GRANT OPTION。

查询确定,受影响的0行(0.00秒)

[根@ TEST4〜]#mysqld_multi的–defaults文件=的/ etc / my.cnf中停止3306
[根@ TEST4〜]#mysqld_multi的–defaults文件=的/ etc / my.cnf中停止3307
[根@ TEST4〜] #mysqld_multi的–defaults文件=的/ etc / my.cnf中停止3308
[根@ TEST4〜]#的ps aux | grep的mysql的
根6148 0.0 0.1 103152 824点/ 1 S + 15:48 0:00 grep的MySQL的

本文出自“ 好好活着 ”博客,请manufacture生产profession务必出处此http://wolfword.blog.51cto.com/4892126/1241304

分享是种美德:运维博客 » MySQL数据库管理员系统学习(4)的mysql的多实例多启动停止

喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址