一、前言

二、概述

三、环境准备

四、安装MySQL 5.5.35

五、新建支持多实例的配置文件(我这里配置的是四个实例)

六、初始化多实例数据库

七、提供管理脚本 mysqld_multi.server

八、整体备份方便后续迁移

九、管理MySQL多实例

十、登录MySQL多实例

十一、其它管理配置

十二、总结

一、前言

在前几篇博客中我们测试了MySQL 5.5的性能与重要指标,较MySQL 5.1性能与各指标有明显的提升,不清楚的博友可以参考一下这几篇博客:

在这一篇博客中我们主要的大家讲解一下MySQL多实例的应用。

二、概述

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

为规避mysql对SMP架构不支持的缺陷,使用多实例绑定处理器的办法,把不同的数据库分配到不同的实例上提供数据服务;

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

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

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

2.背景/需求、注意事项

(1).背景与需求将所有的安装文件、配置文件、数据目录全部放存/data/mysql目录中,便于今后实现快速迁移、整体备份和快速复制;

在一台服务器上运行四个MySQL实例,分别绑定在3306、3307、3308、3309端口上;

四个实例都开启binlog日志,数据目录分别存放在/data/mysql/data、/data/mysql/data2、/data/mysql/data3、/data/mysql/data4

四个实例均采用InnoDB作为默认的存储引擎,字符编码采用UTF-8;

四个实例均采用相同的性能优化配置参数;

(2).注意事项在编译安装时,将数据库的配置文件my.cnf以及data目录等均指向到/data/mysql目录中;

通过mysqld_multi的方式来管理四个不同的实例,采用相同的配置文件共享性能优化配置参数;

在同一个配置文件中,利用[mysqld1]、[mysqld2]、[mysqld3]、[mysqld4]标签实现不同实例的差异化配置;

三、环境准备

1.安装yum源

1

2[root@node1 src]# wget http://mirrors.hustunique.com/epel/6/x86_64/epel-release-6-8.noarch.rpm

[root@node1 src]# rpm -ivh epel-release-6-8.noarch.rpm

2.同步时间

1

2

3[root@node1 src]# yum install -y ntp

[root@node1 src]# ntpdate 202.120.2.101

[root@node1 src]# hwclock –w

3.安装mysql5.5依赖包

1[root@node1 ~]# yum install -y autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool* openssl*

4.安装cmake

1[root@node1 ~]# yum install -y cmake

四、安装MySQL 5.5.35

1.创建安装目录与数据存放目录

1

2[root@node1 ~]# mkdir /data/mysql

[root@node1 ~]# mkdir /data/mysql/data

2.创建mysql用户与组

1

2

3[root@node1 ~]# useradd mysql

[root@node1 ~]# id mysql

uid=500(mysql) gid=500(mysql) 组=500(mysql)

3.授权安装目录与数据目录

1

2[root@node1 ~]# chown -R mysql.mysql /data/mysql/

[root@node1 ~]# chown -R mysql.mysql /data/mysql/data

4.安装mysql

1

2

3

4

5[root@node1 ~]# cd src/

[root@node1 src]# tar xf mysql-5.5.35.tar.gz

[root@node1 src]# cd mysql-5.5.35

[root@node1 mysql-5.5.35]# cmake -DCMAKE_INSTALL_PREFIX=/data/mysql -DSYSCONFDIR=/data/mysql/etc -DMYSQL_DATADIR=/data/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1

[root@node1 mysql-5.5.35]# make && make install

好了,到这里我们的mysql就安装完成了,下面我们为mysql提供多实例配置文件。

五、新建支持多实例的配置文件(我这里配置的是四个实例)

1.删除默认的数据目录

1

2[root@node1 ~]# cd /data/mysql/

[root@node1 mysql]# rm -rf data

2.创建多实例配置需要的目录

1

2[root@node1 mysql]# mkdir etc tmp run log binlogs data data2 data3 data4

[root@node1 mysql]# chown -R mysql.mysql tmp run log binlogs data data2 data3 data4

3.提供配置文件

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

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175[root@node1 ~]# cd src/

[root@node1 src]# cd mysql-5.5.35

[root@node1 mysql-5.5.35]# cp support-files/my-small.cnf /data/mysql/etc/my.cnf

[root@node1 ~]# cd /data/mysql/etc/

[root@node1 etc]# vim my.cnf

# This server may run 4+ separate instances. So we use mysqld_multi to manage their services.

[client]

default-character-set = utf8

[mysqld_multi]

mysqld =/data/mysql/bin/mysqld_safe

mysqladmin =/data/mysql/bin/mysqladmin

log =/data/mysql/log/mysqld_multi.log

user = root

#password =

# This is the general purpose database.

# The locations are default.

# They are left in [mysqld] in case the server is started normally instead of by mysqld_multi.

[mysqld1]

socket =/data/mysql/run/mysqld.sock

port = 3306

pid-file =/data/mysql/run/mysqld.pid

datadir =/data/mysql/data

lc-messages-dir =/data/mysql/share/english

# These support master - master replication

#auto-increment-increment = 4

#auto-increment-offset = 1  # Since it is master 1

log-bin =/data/mysql/binlogs/bin-log-mysqld1

log-bin-index =/data/mysql/binlogs/bin-log-mysqld1.index

#binlog-do-db = # Leave this blank if you want to control it on slave

max_binlog_size = 1024M

# This is exlusively for mysqld2

# It is on 3307 with data directory /data/mysqld/data2

[mysqld2]

socket =/data/mysql/run/mysqld.sock2

port = 3307

pid-file =/data/mysql/run/mysqld.pid2

datadir =/data/mysql/data2

lc-messages-dir =/data/mysql/share/english

# Disable DNS lookups

#skip-name-resolve

# These support master - slave replication

log-bin =/data/mysql/binlogs/bin-log-mysqld2

log-bin-index =/data/mysql/binlogs/bin-log-mysqld2.index

#binlog-do-db =  # Leave this blank if you want to control it on slave

max_binlog_size = 1024M

# Relay log settings

#relay-log = /data/mysql/log/relay-log-mysqld2

#relay-log-index = /data/mysql/log/relay-log-mysqld2.index

#relay-log-space-limit = 4G

# Slow query log settings

#log-slow-queries = /data/mysql/log/slow-log-mysqld2

#long_query_time = 2

#log-queries-not-using-indexes

# This is exlusively for mysqld3

# It is on 3308 with data directory /data/mysqld/data3

[mysqld3]

socket =/data/mysql/run/mysqld.sock3

port = 3308

pid-file =/data/mysql/run/mysqld.pid3

datadir =/data/mysql/data3

lc-messages-dir =/data/mysql/share/english

#Disable DNS lookups

#skip-name-resolve

# These support master - slave replication

log-bin =/data/mysql/binlogs/bin-log-mysqld3

log-bin-index =/data/mysql/binlogs/bin-log-mysqld3.index

#binlog-do-db =  # Leave this blank if you want to control it on slave

max_binlog_size = 1024M

# This is exlusively for mysqld4

# It is on 3309 with data directory /data/mysqld/data4

[mysqld4]

socket =/data/mysql/run/mysqld.sock4

port = 3309

pid-file =/data/mysql/run/mysqld.pid4

datadir =/data/mysql/data4

lc-messages-dir =/data/mysql/share/english

# Disable DNS lookups

#skip-name-resolve

# These support master - slave replication

log-bin =/data/mysql/binlogs/bin-log-mysqld4

log-bin-index =/data/mysql/binlogs/bin-log-mysqld4.index

#binlog-do-db =  # Leave this blank if you want to control it on slave

max_binlog_size = 1024M

# The rest of the my.cnf is shared

# Here follows entries for some specific programs

# The MySQL server

[mysqld]

basedir =/data/mysql

tmpdir =/data/mysql/tmp

socket =/data/mysql/run/mysqld.sock

port = 3306

pid-file =/data/mysql/run/mysqld.pid

datadir =/data/mysql/data

lc-messages-dir =/data/mysql/share/english

skip-external-locking

key_buffer_size = 16K

max_allowed_packet = 1M

table_open_cache = 4

sort_buffer_size = 64K

read_buffer_size = 256K

read_rnd_buffer_size = 256K

net_buffer_length = 2K

thread_stack = 128K

# Increase the max connections

max_connections = 2

# The expiration time for logs, including binlogs

expire_logs_days = 14

# Set the character as utf8

character-set-server = utf8

collation-server = utf8_unicode_ci

# This is usually only needed when setting up chained replication

#log-slave-updates

# Enable this to make replication more resilient against server crashes and restarts

# but can cause higher I/O on the server

#sync_binlog = 1

# The server id, should be unique in same network

server-id = 1

# Set this to force MySQL to use a particular engine/table-type for new tables

# This setting can still be overridden by specifying the engine explicitly

# in the CREATE TABLE statement

default-storage-engine = INNODB

# Enable Per Table Data for InnoDB to shrink ibdata1

innodb_file_per_table = 1

# Uncomment the following if you are using InnoDB tables

#innodb_data_home_dir = /data/mysql/data

#innodb_data_file_path = ibdata1:10M:autoextend

#innodb_log_group_home_dir = /data/mysql/data

# You can set .._buffer_pool_size up to 50 - 80 % of RAM

# but beware of setting memory usage too high

innodb_buffer_pool_size = 16M

innodb_additional_mem_pool_size = 2M

# Set .._log_file_size to 25 % of buffer pool size

innodb_log_file_size = 5M

innodb_log_buffer_size = 8M

innodb_flush_log_at_trx_commit = 1

innodb_lock_wait_timeout = 50

[mysqldump]

quick

max_allowed_packet = 16M

[mysql]

no-auto-rehash

[myisamchk]

key_buffer_size = 8M

sort_buffer_size = 8M

[mysqlhotcopy]

interactive-timeout

[mysql.server]

user = mysql

[mysqld_safe]

log-error =/data/mysql/log/mysqld.log

pid-file =/data/mysql/run/mysqld.pid

open-files-limit = 8192

注,MySQL自带了几个不同的配置文件,放置在/data/mysql/support-files目录下,分别是my-huge.cnf,my-innodb-heavy-4G.cnf,my-large.cnf,my-medium.cnf,my-small.cnf,通过名称我们可以很直观的了解到他们是针对不同的服务器配置的,本文的配置文件是来自于my-small.cnf的,因为我是在虚拟机上进行的设置;在生产环境中,我们可以通过参考my-huge.cnf或my-innodb-heavy-4G.cnf中的部分参数配置,来对服务器进行优化;

4.修改my.cnf读写权限

1

2[root@node1 etc]# chown -R root.root /data/mysql/etc

[root@node1 etc]# chmod 600 /data/mysql/etc/my.cnf

好了,到这里我们的配置文件就设置完成了,下面我们来初始化一下数据库。

六、初始化多实例数据库

1.切换到mysql的安装目录

1[root@node1 ~]# cd /data/mysql/

2.初始化实例[mysqld1]

1[root@node1 mysql]# scripts/mysql_install_db --basedir=/data/mysql --datadir=/data/mysql/data --user=mysql

3.初始化实例[mysqld2]

1[root@node1 mysql]# scripts/mysql_install_db --basedir=/data/mysql --datadir=/data/mysql/data2 --user=mysql

4.初始化实例[mysqld3]

1[root@node1 mysql]# scripts/mysql_install_db --basedir=/data/mysql --datadir=/data/mysql/data3 --user=mysql

5.初始化实例[mysqld4]

1[root@node1 mysql]# scripts/mysql_install_db --basedir=/data/mysql --datadir=/data/mysql/data4 --user=mysql

好了,到这里我们初始化工作就完成了,下面我们来提供一下多实例的管理脚本。

七、提供管理脚本 mysqld_multi.server

1.创建管理脚本目录

1[root@node1 mysql]# mkdir /data/mysql/init.d

2.提供管理脚本

1[root@node1 mysql]# cp support-files/mysqld_multi.server init.d/

3.简单修改一下脚本

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[root@node1 mysql]# cd init.d/

[root@node1 init.d]# vim mysqld_multi.server

#!/bin/sh

#

# A simple startup script for mysqld_multi by Tim Smith and Jani Tolonen.

# This script assumes that my.cnf file exists either in /etc/my.cnf or

# /root/.my.cnf and has groups [mysqld_multi] and [mysqldN]. See the

# mysqld_multi documentation for detailed instructions.

#

# This script can be used as /etc/init.d/mysql.server

#

# Comments to support chkconfig on RedHat Linux

# chkconfig: 2345 64 36

# description: A very fast and reliable SQL database engine.

#

# Version 1.0

#

basedir=/data/mysql

bindir=/data/mysql/bin

conf=/data/mysql/etc/my.cnf

export PATH=$PATH:$bindir

if test -x $bindir/mysqld_multi

then

mysqld_multi="$bindir/mysqld_multi";

else

echo "Can't execute $bindir/mysqld_multi from dir $basedir";

exit;

fi

case "$1" in

'start' )

"$mysqld_multi" --defaults-extra-file=$conf start $2

;;

'stop' )

"$mysqld_multi" --defaults-extra-file=$conf stop $2

;;

'report' )

"$mysqld_multi" --defaults-extra-file=$conf report $2

;;

'restart' )

"$mysqld_multi" --defaults-extra-file=$conf stop $2

"$mysqld_multi" --defaults-extra-file=$conf start $2

;;

*)

echo "Usage: $0 {start|stop|report|restart}" >&2

;;

esac

好了,到这里我们所有的配置就全部完成了,下面我们打包备份一下。

八、整体备份方便后续迁移

1

2

3

4

5

6

7[root@node1 ~]# cd /data/

[root@node1 data]# tar czvf mysql-5.5.350-full.tar.gz /data/mysql/

[root@node1 data]# ll -h

总用量 128M

drwx------.  2 root  root   16K 8月  17 18:42 lost+found

drwxr-xr-x  22 mysql mysql 4.0K 1月   6 22:08 mysql

-rw-r--r--   1 root  root  128M 1月   7 00:25 mysql-5.5.350-full.tar.gz

注,备份完成后,直接将mysql-5.5.350-full.tar.gz拿到其他服务器上,解压后便可以直接启用。嘿嘿,方便吧……

九、管理MySQL多实例

1.同时启动四个mysql实例

(1).方法一:

1[root@node1 ~]# /data/mysql/init.d/mysqld_multi.server start 1,2,3,4

或方法二:

1[root@node1 ~]# /data/mysql/init.d/mysqld_multi.server start 3306,3307,3308,3309

(2).查看一下启动的实例

1

2

3

4

5[root@node1 ~]# netstat -ntulp | grep mysqld

tcp        0      0 0.0.0.0:3307                0.0.0.0:*                   LISTEN      31416/mysqld

tcp        0      0 0.0.0.0:3308                0.0.0.0:*                   LISTEN      31414/mysqld

tcp        0      0 0.0.0.0:3309                0.0.0.0:*                   LISTEN      31420/mysqld

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      31413/mysqld

2.同时关闭四个mysql实例

(1).方法一:

1[root@node1 ~]# /data/mysql/init.d/mysqld_multi.server stop 1,2,3,4

或方法二:

1[root@node1 ~]# /data/mysql/init.d/mysqld_multi.server stop 3306,3307,3308,3309

3.单独启动或关闭mysql实例

(1).启动一个实例

1

2

3[root@node1 ~]# /data/mysql/init.d/mysqld_multi.server start 1

[root@node1 ~]# netstat -ntulp | grep mysqld

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      32221/mysqld

(2).关闭一个实例

1[root@node1 ~]# /data/mysql/init.d/mysqld_multi.server stop 1

注,启动或关闭两个或者三个实例方法的上面相同这里就不再演示。

十、登录MySQL多实例

注,我们同时启动四个实例,下面我们来演示一下怎么分别登录这四个实例。为了演示四个实例的区别,我们分别在四个实例中创建mydb1、mydb2、mydb3、mydb4。

1.登录[mysqld1]

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[root@node1 ~]# /data/mysql/bin/mysql -uroot -h127.0.0.1 -P3306 -p

Enter password:

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

Your MySQL connectionid is 1

Server version: 5.5.35-log Source distribution

Copyright (c) 2000, 2013, 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' toclear the current input statement.

mysql> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

|test               |

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

4 rowsin set (0.00 sec)

mysql> create database mydb1;

Query OK, 1 row affected (0.00 sec)

mysql> show databases;

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

| Database           |

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

| information_schema |

| mydb1              |

| mysql              |

| performance_schema |

|test               |

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

5 rowsin set (0.00 sec)

2.登录[mysqld2]

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[root@node1 ~]# /data/mysql/bin/mysql -uroot -h127.0.0.1 -P3307 -p

Enter password:

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

Your MySQL connectionid is 1

Server version: 5.5.35-log Source distribution

Copyright (c) 2000, 2013, 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' toclear the current input statement.

mysql> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

|test               |

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

4 rowsin set (0.00 sec)

mysql> create database mydb2;

Query OK, 1 row affected (0.00 sec)

mysql> show databases;

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

| Database           |

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

| information_schema |

| mydb2              |

| mysql              |

| performance_schema |

|test               |

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

5 rowsin set (0.00 sec)

3.登录[mysqld3]

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[root@node1 ~]# /data/mysql/bin/mysql -uroot -h127.0.0.1 -P3308 -p

Enter password:

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

Your MySQL connectionid is 1

Server version: 5.5.35-log Source distribution

Copyright (c) 2000, 2013, 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' toclear the current input statement.

mysql> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

|test               |

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

4 rowsin set (0.01 sec)

mysql> create database mydb3;

Query OK, 1 row affected (0.00 sec)

mysql> show databases;

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

| Database           |

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

| information_schema |

| mydb3              |

| mysql              |

| performance_schema |

|test               |

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

5 rowsin set (0.00 sec)

4.登录[mysqld4]

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[root@node1 ~]# /data/mysql/bin/mysql -uroot -h127.0.0.1 -P3309 -p

Enter password:

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

Your MySQL connectionid is 1

Server version: 5.5.35-log Source distribution

Copyright (c) 2000, 2013, 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' toclear the current input statement.

mysql> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

|test               |

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

4 rowsin set (0.01 sec)

mysql> create database mydb4;

Query OK, 1 row affected (0.00 sec)

mysql> show databases;

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

| Database           |

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

| information_schema |

| mydb4              |

| mysql              |

| performance_schema |

|test               |

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

5 rowsin set (0.00 sec)

好了,我们的MySQL多实例登录就演示到这里了,下面我们来设置一下mysql的root密码。

十一、其它管理配置

1.为mysql的root用户创建密码

1

2

3

4[root@node1 ~]# /data/mysql/bin/mysqladmin -uroot -h127.0.0.1 -P3306 password '123456'

[root@node1 ~]# /data/mysql/bin/mysqladmin -uroot -h127.0.0.1 -P3307 password '123456'

[root@node1 ~]# /data/mysql/bin/mysqladmin -uroot -h127.0.0.1 -P3308 password '123456'

[root@node1 ~]# /data/mysql/bin/mysqladmin -uroot -h127.0.0.1 -P3309 password '123456'

2.删除匿名连接的空密码帐号

注,分别登录实例[mysqld1]、[mysqld2]、[mysqld3]、[mysqld4],执行以下命令:

1

2

3

4

5

6mysql>use mysql;#选择系统数据库mysql

mysql>select Host,User,Password from user;#查看所有用户

mysql>delete from user where password="";#删除无密码账户

mysql>flush privileges;#刷新权限

mysql>select Host,User,Password from user;#确认密码为空的用户是否已全部删除

mysql>exit;

十二、总结

1.采用源码编译安装MySQL,可能在第一次会花费较多的时间,但却是非常值得的,因为我们可以自己组织所有MySQL相关文件的位置;并且经过源码编译安装后的MySQL,可以直接复制到其它服务器上运行,大大方便了我们以后的迁移、备份和新服务器的配置。

2.本文中仅仅用了四个实例[mysqld1]、[mysqld2]、[mysqld3]、[mysqld4]来举例,实际上我们可以通过这样的方式,实现[mysqld5]、[mysqld6]...等更多的实例,前提是你的服务器硬件配置得根得 上,但是一般我们这边不会超过6个实例。

3.在单机运行多实例的情况下,切忌不要使用 mysql -hlocalhost 或 直接忽略-h参数登录服务器,这应该算是MySQL的一个bug,就是如果使用localhost或忽略-h参数,而不是指定127.0.0.1的话,即使选择的端口是3307,还是会登陆到3306中去,因此应尽量避免这种混乱的产生,统一用127.0.0.1绑定端口或采用socket来登录,在mysql5.5中你不指定-h127.0.0.1选项,你是无法登录的。

最后,希望大家有所收获吧^_^……

mysql 5.5.35 单机多实例配置详解_MySQL 5.5.35 单机多实例配置详解相关推荐

  1. mysql在windows配置多节点_mysql基础--windows下的多实例配置

    由于这边没有linux环境,所以只能暂时讲解如何在windows上配置多实例 ***先要net stop mysql关掉mysql的服务,因为开启着mysql的服务并对其安装文件和数据文件做操作终归不 ...

  2. mysql属性配置提高查询_MYSQL性能优化-安装时优化参数配置提高服务性能

    MYSQL性能优化一直是个头痛的问题,目前大多都是直接把页面html静态页面或直接使用了缓存技术,下面我就mysql本身的性能优化来分享一下. 安装时优化参数配置提高服务性能 在Linux下安装Mys ...

  3. MySQL慢查询日志的配置与使用_MySQL 慢查询日志的开启与配置

    简介 MySQL 慢查询日志是排查问题 SQL 语句,以及检查当前 MySQL 性能的一个重要功能. 查看是否开启慢查询功能: mysql> show variables like 'slow_ ...

  4. mysql between详解_MySQL中BETWEEN子句的用法实例详解

    这篇文章主要介绍了MySQL中BETWEEN子句的用法详解,是MySQL入门学习中的基础知识,需要的朋友可以参考下 可以使用IN子句来代替相结合的"大于等于和小于等于"的条件. 要 ...

  5. mysql sleep详解_MySQL中sleep函数的特殊现象示例详解

    前言 MySQL中的系统函数sleep,实际应用的场景不多,一般用来做实验测试,昨天在测试的时候,意外发现sleep函数的一个特殊现象.如果在查询语句中使用sleep函数,那么休眠的时间跟返回的记录有 ...

  6. mysql删除语句详解_MySQL 删除数据语句(DELETE)用法详解

    MySQL 删除数据操作使用 DELETE FROM 语句,它属于 DML(数据操作语言)范畴,DELETE 语句是一行一行地进行删除操作,同时它会将每行的操作记录到事务日志中,以便可以进行回滚操作, ...

  7. mysql 外键详解_mysql 中的外键key值的详解

    如果Key是空的, 那么该列值的可以重复, 表示该列没有索引, 或者是一个非唯一的复合索引的非前导列 2. 如果Key是PRI,  那么该列是主键的组成部分 3. 如果Key是UNI,  那么该列是一 ...

  8. 【MySQL 8.0 OCP 1Z0-908认证考试】题库精讲--第三讲mysql8.0安装配置升级(中)

    此专题题目较多,因此分为上中下三部分来讲,此为中篇. 完整版题库请到我的资源中下载,此为传送门. https://download.csdn.net/download/kanon_lgt/850104 ...

  9. Web基础配置篇(十四): Kafka单机、集群的安装配置及使用

    Web基础配置篇(十四): Kafka单机.集群的安装配置及使用 一.概述 Apache Kafka是一个分布式发布 - 订阅消息系统和一个强大的队列,可以处理大量的数据,并使您能够将消息从一个端点传 ...

最新文章

  1. SVM原理详细图文教程来了!一行代码自动选择核函数,还有模型实用工具
  2. MyBatis学习总结(14)——Mybatis使用技巧总结
  3. 安装Docker和下载images镜像和常用Docker命令
  4. Android向上显示更多内容,如何在Android中为2个父项实现向上导航,指向1个子活动...
  5. Firefox3与WEB客户端开发相关的新特性
  6. Linux之ubuntu的root无法连接FTP
  7. 【循序渐进学Python】14.数据库的支持
  8. Spark- Linux下安装Spark
  9. 关于sqlserver中xml数据的操作
  10. tcl/tk demo
  11. mac xampp连接mysql数据库_请问在mac下xampp无法读取mysql的数据
  12. 老板催你交圣诞海报设计?PSD源文件素材,直接编辑
  13. 我们先来了解下什么是网络爬虫?
  14. ★☆★书已到手《Java程序员,上班那点事儿》正式上架★☆★
  15. oracle中使用impdp数据泵导入数据提示“ORA-31684:对象类型已经存在”错误的解决......
  16. ARGOX 力象 OS-214Plus 条码打印机 B/S 打印
  17. Autodesk 3DSMax 2012 安装说明
  18. 运筹系列58:python使用numba进行加速
  19. BZOJ4011: [HNOI2015]落忆枫音
  20. MTKLOG简介和基本的分析流程

热门文章

  1. DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multiva
  2. java中string类_Java中String类浅谈
  3. cnblogs第一篇
  4. Luffy之Xadmin以及首页搭建(轮播图,导航)
  5. GEEK学习笔记— —程序猿面试宝典笔记(二)
  6. Linux云自动化运维第六课
  7. [moka同学笔记]PHP操作Redis收集
  8. 其实吧,微信就是已经用电脑上线,第二天消息还是从手机上重新接收
  9. delphi self 的使用
  10. 从 12306 订购火车票 无需FQ