MySQL5.6多实例部署

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://suifu.blog.51cto.com/9167728/1850560

无论是迫于预算,亦或者是领导要求,多实例的安装也是DBA必须掌握的技术,他的启停和登录方式和单实例安装数据库略有不同,本文记录下如何完成MySQL5.6多实例部署。

首先我们看一下my.cnf和单实例的区分:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

[[email protected] scripts]#

cat /etc/my.cnf

[client]

#port = 3306

#socket = /tmp/mysql.sock

#default-character-set = utf8

 

[mysql]

#default-character-set = utf8

 

[mysqld3306]

port = 3306

basedir = /usr/local/mysql

datadir = /data/mysql_3306

socket  = /tmp/mysql_3306.sock

slow_query_log_file = /data/mysql_3306/slow.log

log-error = /data/mysql_3306/error.log

log-bin = /data/mysql_3306/mysql-bin

sync_binlog = 1

binlog_format = row

transaction_isolation = REPEATABLE-READ

innodb_buffer_pool_size = 100m

 

[mysqld3308]

port = 3308

basedir = /usr/local/mysql

datadir = /data/mysql_3308

socket = /tmp/mysql_3308.sock

slow_query_log = 1

slow_query_log_file = /data/mysql_3308/slow.log

log-error = /data/mysql_3308/error.log

long_query_time = 1

log-bin = /data/mysql_3308/mysql-bin

sync_binlog = 1

binlog_cache_size = 4M

default-storage-engine = InnoDB

binlog_format = row

transaction_isolation = REPEATABLE-READ

innodb_buffer_pool_size = 100m

 

[mysqld_multi]

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

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

 

 

[mysqldump]

quick

max_allowed_packet = 32M

可以看出,多实例的my.cnf实际上就是如上所示,本文为了演示实验环境,innodb_buffer_pool_size仅仅开了100m,真实的生产库中多实例部署该参数要开大些,两个实例该参数的值达到内存的50%-80%都可以。

下面开始初始化我们的数据库

首先创建我们的数据目录


1

2

3

[[email protected] ~]#mkdir -p /data/mysql_3306

[[email protected] ~]#mkdir -p /data/mysql_3308

[[email protected] ~]#echo "export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib" >>/etc/profile

进入到mysql的scripts文件夹下对数据库进行初始化,这里我们对3306端口数据库进行初始化


1

[[email protected] scripts]#./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql_3306 --defaults-file=/etc/my.cnf --user=mysql

这里我们对3308端口数据库进行初始化


1

2

[[email protected]

scripts]# ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql_3308 --defaults-file=/etc/my.cnf --user=mysql

初始化完成后,我们便可以启停数据库了,和单实例不同,多实例采用mysqld_multi来启停数据库

[[email protected] bin]# ./mysqld_multi --defaults-file=/etc/my.cnf --user=root --password=MANAGER start 3306,3308

可以利用mysqld_multi的report命令来检测多实例的运行状况


1

2

3

4

5

[[email protected] bin]#

./mysqld_multi report

Reporting MySQL servers

MySQL server from group: mysqld3306 is running

MySQL server from group: mysqld3308 is running

登录方式和单实例大体相同,不过由于多实例的存在,我们需要指定不同的端口号


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

[[email protected]HE1 bin]# mysql -uroot -p -P3306 -h 192.168.1.48

Enter password:

Welcome to the MySQL monitor.  Commands end with or \g.

Your MySQL connection id is 6 Server version: 5.6.16-log MySQL Community Server (GPL)

 

Copyright (c) 2000,

2014, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a

registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

 

Type ‘help;‘ or ‘\h‘

for help. Type ‘\c‘ to clear the current input statement.

 

 

mysql> show databases;

+--------------------+

Database           |

+--------------------+

| information_schema

|

| 3306db             |

| mysql              |

| performance_schema

|

| test               |

+--------------------+

rows in set (0.00 sec)

当然,利用socket文件登录也是可以的


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

[[email protected] bin]#mysql -uroot -p -S /data/mysql_3306/mysql_3306.sock

Enter password:

Welcome to the MySQL monitor.  Commands end with or \g.

Your MySQL connection id is 7 Server version: 5.6.16-log MySQL Community Server (GPL)

 

Copyright (c) 2000,

2014, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a

registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

 

Type ‘help;‘ or ‘\h‘

for help. Type ‘\c‘ to clear the current input statement.

 

 

mysql> show databases;

+--------------------+

Database           |

+--------------------+

| information_schema

|

| 3306db             |

| mysql              |

| performance_schema

|

| test               |

+--------------------+

rows in set (0.00 sec)

这里是登录3308端口数据库


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

[[email protected] bin]#mysql -uroot -p -P3308 -h 192.168.1.48

Enter password:

Welcome to the MySQL monitor.  Commands end with or \g.

Your MySQL connection id is 8 Server version: 5.6.16-log MySQL Community Server (GPL)

 

Copyright (c) 2000,

2014, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a

registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

 

Type ‘help;‘ or ‘\h‘

for help. Type ‘\c‘ to clear the current input statement.

 

 

Type ‘help;‘ or ‘\h‘

for help. Type ‘\c‘ to clear the current input statement.

 

mysql> show databases;

+--------------------+

Database           |

+--------------------+

| information_schema

|

| 3308db             |

| mysql              |

| performance_schema

|

| test               |

+--------------------+

rows in set (0.00sec)

 

mysql> quit

Bye

利用3308端口的socket文件登录数据库


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

[[email protected] bin]#mysql -uroot -p -S /data/mysql_3308/mysql_3308.sock

Enter password:

Welcome to the MySQL monitor.  Commands end with or \g.

Your MySQL connection id is 9 Server version: 5.6.16-log MySQL Community Server (GPL)

 

Copyright (c) 2000,

2014, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a

registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

 

Type ‘help;‘ or ‘\h‘

for help. Type ‘\c‘ to clear the current input statement.

 

mysql> show databases;

+--------------------+

Database           |

+--------------------+

| information_schema

|

| 3308db             |

| mysql              |

| performance_schema

|

| test               |

+--------------------+

rows in set (0.00sec)

至此,MySQL5.6多实例部署完成。

本文出自 “岁伏” 博客,请务必保留此出处http://suifu.blog.51cto.com/9167728/1850560

时间: 2024-10-13 12:10:20

MySQL5.6多实例部署的相关文章

烂泥:mysql5.5多实例部署

本文由秀依林枫提供友情赞助,首发于烂泥行天下. mysql5.5数据库多实例部署,我们可以分以下几个步骤来完成. 1. mysql多实例的原理 2. mysql多实例的特点 3. mysql多实例应用场景 4. mysql5.5多实例部署方法 一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用

mysql5.5多实例部署

mysql5.5数据库多实例部署,我们可以分以下几个步骤来完成. 1. mysql多实例的原理 2. mysql多实例的特点 3. mysql多实例应用场景 4. mysql5.5多实例部署方法 一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配

MySQL-5.6.36-多实例-部署(编译版)

MySQL多实例_沁贰百科 注:部署双实例前,首先需要部署单实例,单实例部署详情如下: https://www.cnblogs.com/wangqiner/p/9081002.html 1.如已经安装完成单实例,需要先停止单实例运行,接下来进行多实例部署 /etc/init.d/mysqld stop chkconfig mysqld off 2.已经制作好多实例配置文件及启动文件,以下为下载地址: 3.上传data.tar.gz到根目录,然后tar解压 [[email protected] /

mysql 5.5多实例部署

mysql5.5数据库多实例部署,我们可以分以下几个步骤来完成. 1. mysql多实例的原理 2. mysql多实例的特点 3. mysql多实例应用场景 4. mysql5.5多实例部署方法 一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配

MySQL单机多实例部署详解

一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配置文件.启动程序.数据文件.在提供服务时,mysql多实例在逻辑上看来是各自独立的,各个实例之间根据配置文件的设定值,来取得服务器的相关硬件资源. 二.mysql多实例的特点 2.1 有效的利用服

mysql-5.6.36单/多实例部署

mysql多实例部署 实验环境 mysql-1:10.0.0.101?mysql-2:10.0.0.102?centos 6.9 mysql的源码安装 [root@mysql-1 3306]# cat /etc/redhat-release CentOS release 6.9 (Final)关闭iptables和selinux安装mysql-5.6.36##安装前期准备#1.创建安装目录及软件包下载目录 [ -e /tools ]||mkdir -p /tools [ -e /applicat

mysql二进制安装,升级,多实例部署

目标 理解线上部署考虑的因素 学会编译安装以及二进制安装mysql 学会升级mysql 学会多实例部署mysql数据库 学会合理部署mysql线上库 考虑因素: 版本选择,5.1,5.5还是5.6? 分支选择,官方社区版?percona server?mariadb? 推荐官方版,简单易上手 安装方式,包安装?二进制包安装?源码安装? 线上推荐二进制包安装 路径配置,参数配置(尽量模板化,标准化) 一个实例多个库,or多个实例单个库? 二进制安装mysql 下载软件安装包 解压放到指定目录(比如

MySQL单机多实例部署

一.MySQL多实例部署 版本:5.7.18 1.软件安装 # tar xf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local # cd /usr/local # chown -R root.root mysql-5.7.18-linux-glibc2.5-x86_64 # ln -sv mysql-5.7.18-linux-glibc2.5-x86_64 mysql5.7.18 # mkdir /data/{mydata3307,m

Tomcat 单(多)实例部署使用

一.前言 (一).概述 Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台.安全域管理和Tomcat阀等.由于 Tomcat 本身也内含了一个 HTTP 服务器,它也可以被视作一个单独的 Web 服务器.但是,不能将 Tomcat 和Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP