返回顶部
首页 > 资讯 > 数据库 >MySQL数据库入门之多实例配置方法详解
  • 451
分享到

MySQL数据库入门之多实例配置方法详解

MySQL数据库多实例配置 2022-05-31 11:05:26 451人浏览 八月长安
摘要

本文实例讲述了Mysql数据库入门之多实例配置方法。分享给大家供大家参考,具体如下: 前面介绍了相关的基础命令操作:mysql数据库基础篇之入门基础命令 所有的操作都是基于单实例的,mysql多实例在实际生产环境也是

本文实例讲述了Mysql数据库入门之多实例配置方法。分享给大家供大家参考,具体如下:

前面介绍了相关的基础命令操作:mysql数据库基础篇之入门基础命令

所有的操作都是基于单实例的,mysql多实例在实际生产环境也是非常实用的,因为必须要掌握。

1、什么是多实例

多实例就是一台服务器上开启多个不同的服务端口(默认3306),运行多个mysql的服务进程,这此服务进程通过不同的Socket监听不同的服务端口来提供各在的服务,所有实例之间共同使用一套MYSQL的安装程序,但各自使用不同的配置文件、启动程序、数据文件,在逻辑上是相对独立的。

多实例主要作用是:充分利用现有的服务器硬件资源,为不同的服务提供数据服务,但是如果某个实例并发比较高的,同样是会影响到其它实例的性能

2、安装多实例环境准备

安装前需要先安装mysql,但是只需将安装过程进行到make install即可(编译安装),如果使用免安装程序,只需解压软件包即可,今天的环境是通过免安装包来安装mysql主程序(其它的安装可以参考前面的安装过程自行测试

系统环境


[root@Centos6 ~]# cat /etc/redhat-release 
CentOS release 6.5 (Final)
[root@centos6 ~]# uname -r
2.6.32-431.el6.x86_64

安装程序

mysql-5.5.52-linux2.6-x86_64.tar.gz

首先将软件下载到本地


wget Http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.52-linux2.6-x86_64.tar.gz

创建安装用户


[root@centos6 ~]#groupadd mysql
[root@centos6 ~]#useradd mysql -s /sbin/nologin -g mysql -M
[root@centos6 ~]#tail -1 /etc/passwd
mysql:x:500:500::/home/mysql:/sbin/nologin

创建多实例的数据目录


[root@centos6 tools]# mkdir -p /data/{3306,3307}
[root@centos6 tools]# tree /data/
/data/
+-- 3306
+-- 3307
2 directories, 0 files

3、安装MYSQL多实例

接下来进行安装mysql的多实例操作

解压软件


[root@centos6 tools]# ll mysql-5.5.52-linux2.6-x86_64.tar.gz 
-rw-r--r--. 1 root root 185855000 Aug 26 21:38 mysql-5.5.52-linux2.6-x86_64.tar.gz
[root@centos6 tools]# tar zxf mysql-5.5.52-linux2.6-x86_64.tar.gz

拷贝配置文件


[root@centos6 mysql-5.5.52-linux2.6-x86_64]# cp support-files/my-small.cnf /data/3306/my.cnf

[root@centos6 mysql-5.5.52-linux2.6-x86_64]# cp support-files/mysql.server /data/3306/mysql

[root@centos6 mysql-5.5.52-linux2.6-x86_64]# cp support-files/my-small.cnf /data/3307/my.cnf

[root@centos6 mysql-5.5.52-linux2.6-x86_64]# cp support-files/mysql.server /data/3307/mysql

为一规范安装路径,将免安装包拷贝到应用程序目录下


[root@centos6 tools]# mv mysql-5.5.52-linux2.6-x86_64 /application/mysql

[root@centos6 tools]# ll /application/mysql
total 72
drwxr-xr-x. 2 root root 4096 Dec 9 17:15 bin
-rw-r--r--. 1 7161 31415 17987 Aug 26 19:24 COPYING
drwxr-xr-x. 3 root root 4096 Dec 9 17:15 data
drwxr-xr-x. 2 root root 4096 Dec 9 17:15 docs
drwxr-xr-x. 3 root root 4096 Dec 9 17:15 include
-rw-r--r--. 1 7161 31415 301 Aug 26 19:24 INSTALL-BINARY
drwxr-xr-x. 3 root root 4096 Dec 9 17:15 lib
drwxr-xr-x. 4 root root 4096 Dec 9 17:15 man
drwxr-xr-x. 10 root root 4096 Dec 9 17:15 mysql-test
-rw-r--r--. 1 7161 31415 2496 Aug 26 19:24 README
drwxr-xr-x. 2 root root 4096 Dec 9 17:15 scripts
drwxr-xr-x. 27 root root 4096 Dec 9 17:15 share
drwxr-xr-x. 4 root root 4096 Dec 9 17:15 sql-bench
drwxr-xr-x. 2 root root 4096 Dec 9 17:15 support-files

修改配置文件与启动文件

因为是多实例,其中参数需要修改,修改后的配置文件如下:配置文件my.cnf


[client]
port = 3307
socket = /data/3307/mysql.sock

[mysql]
no-auto-rehash

[mysqld] user = mysql
port = 3307
socket = /data/3307/mysql.sock
basedir = /application/mysql
datadir = /data/3307/data
#log_long_fORMat
#log-error = /data/3307/error.log
#log-slow-queries = /data/3307/slow.log
pid-file = /data/3307/mysql.pid
server-id = 3 

[mysqld_safe]
log-error=/data/3307/mysql3307.err
pid-file=/data/3307/mysqld.pid

启动程序文件mysql


[root@backup 3307]# cat mysql
#!/bin/sh
init port=3307
mysql_user="root"
mysql_pwd="miGongge"
CmdPath="/application/mysql/bin"
mysql_sock="/data/${port}/mysql.sock"
#startup
function_start_mysql() {
if [ ! -e "$mysql_sock" ];then
 printf "Starting MySQL...\n"
/bin/sh ${CmdPath}/mysqld_safe --defaults-file=/data/${port}/my.cnf 2>&1 > /dev/null &
else
 printf "MySQL is running...\n"
exit
fi
}
#stop function
function_stop_mysql() {
if [ ! -e "$mysql_sock" ];then
printf "MySQL is stopped...\n"
exit
else
printf "Stoping MySQL...\n"
${CmdPath}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /data/${port}/mysql.sock shutdown
fi
}
#restart function
function_restart_mysql() {
 printf "Restarting MySQL...\n"
 function_stop_mysql
 sleep 2
 function_start_mysql
}
case $1 in
start)
function_start_mysql
;;
stop)
function_stop_mysql
;;
restart)
function_restart_mysql
;;
*)
printf "Usage: /data/${port}/mysql {start|stop|restart}\n"
esac

其它的配置可参考配置文件进行修改即可

多实例初始化操作


[root@centos6 3306]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/data/3306/data --user=mysql
Installing MySQL system tables...
161209 18:02:17 [Warning] 'THREAD_CONCURRENCY' is deprecated and will be removed in a future release.
161209 18:02:17 [Note] /application/mysql/bin/mysqld (mysqld 5.5.52-log) starting as process 3336 ...
OK
Filling help tables...
161209 18:02:17 [Warning] 'THREAD_CONCURRENCY' is deprecated and will be removed in a future release.
161209 18:02:17 [Note] /application/mysql/bin/mysqld (mysqld 5.5.52-log) starting as process 3343 ...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWord FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/application/mysql/bin/mysqladmin -u root password 'new-password'
/application/mysql/bin/mysqladmin -u root -h centos6 password 'new-password'
Alternatively you can run:
/application/mysql/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /application/mysql ; /application/mysql/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /application/mysql/mysql-test ; perl mysql-test-run.pl
Please report any problems at http://bugs.mysql.com/

初始化成功后,会在数据目录下产生一个数据目录data和一些文件


[root@centos6 3306]# ll /data/3306/data/
total 1136
drwx------. 2 mysql root  4096 Dec 9 18:02 mysql
-rw-rw----. 1 mysql mysql 27693 Dec 9 18:02 mysql-bin.000001
-rw-rw----. 1 mysql mysql 1114546 Dec 9 18:02 mysql-bin.000002
-rw-rw----. 1 mysql mysql  38 Dec 9 18:02 mysql-bin.index
drwx------. 2 mysql mysql 4096 Dec 9 18:02 performance_schema
drwx------. 2 mysql root  4096 Dec 9 18:02 test

另一个实例的初始化请参考上述操作进行,操作过程不再一一介绍


[root@centos6 3307]# ll /data/3307/data/
total 1136
drwx------. 2 mysql root  4096 Dec 9 18:40 mysql
-rw-rw----. 1 mysql mysql 27693 Dec 9 18:40 mysql-bin.000001
-rw-rw----. 1 mysql mysql 1114546 Dec 9 18:40 mysql-bin.000002
-rw-rw----. 1 mysql mysql  38 Dec 9 18:40 mysql-bin.index
drwx------. 2 mysql mysql 4096 Dec 9 18:40 performance_schema
drwx------. 2 mysql root  4096 Dec 9 18:40 test

4 、启动多实例并登录

启动服务


[root@backup 3307]# /data/3306/mysql start
Starting MySQL...
[root@backup 3307]# lsof -i :3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF node NAME
mysqld 19986 mysql 10u IPv4 90967 0t0 tcp *:mysql (LISTEN)
[root@backup 3307]# /data/3307/mysql
start Starting MySQL...
[root@backup 3307]# lsof -i :3307
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 21648 mysql 11u IPv4 92899 0t0 TCP *:opsession-prxy (LISTEN)

检查端口


[root@backup 3307]# netstat -lntup|grep mysql
tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN 21648/mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 19986/mysqld

登陆多实例数据库


[root@backup ~]# mysql -S /data/3306/mysql.sock
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.51-log Source distribution
Copyright (c) 2000, 2016, 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> create database data3306;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| data3306 |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.00 sec)
mysql> quit
Bye

[root@backup ~]# mysql -S /data/3307/mysql.sock
Welcome to the MySQL monitor.
Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.51 Source distribution
Copyright (c) 2000, 2016, 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 |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.05 sec)

成功登陆,并在3306实例中创建数据库,但是3307实例上查看并没有创建过的数据,说明两个实例是独立的

注:如果再需要新增一个实例,基本的配置步骤同上述一样,只需要相应修改配置文件与启动程序文件中的端口号与数据目录的路径即可,最后可以将多实例数据库启动命令加入开机自启动。

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL数据库入门之多实例配置方法详解

本文链接: https://lsjlt.com/news/9562.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL数据库入门之多实例配置方法详解
    本文实例讲述了MySQL数据库入门之多实例配置方法。分享给大家供大家参考,具体如下: 前面介绍了相关的基础命令操作:MySQL数据库基础篇之入门基础命令 所有的操作都是基于单实例的,mysql多实例在实际生产环境也是...
    99+
    2022-05-31
    MySQL 数据库 多实例配置
  • MySQL多实例数据库的安装及配置方法
    下面讲讲关于MySQL多实例数据库的安装及配置方法,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完MySQL多实例数据库的安装及配置方法这篇文章你一定会有所受益。一、MySQL多...
    99+
    2024-04-02
  • MySQL数据库入门(超详细,多图解)
    一,前言 作者是一名双非本科大二在校学生,因为闲得无聊就自学了数据库,从软件领域来说吧,无论是C/S、B/S架构的软件,只要涉及存储大量数据,一般后台都需要数据库支撑;无论你是做前端还是后端,考虑到后...
    99+
    2023-10-08
    mysql 数据库 database
  • MySQL数据库入门之备份数据库操作详解
    本文实例讲述了MySQL数据库入门之备份数据库操作。分享给大家供大家参考,具体如下: 接上一次:MySQL数据库入门多实例配置 一提到数据,大家神经都会很紧张,数据的类型有很多种,但是总归一点,数据很重要,非常重要,...
    99+
    2022-05-16
    MySQL 数据库 备份数据库
  • MySQL数据库超时设置配置的方法实例
    目录前言1. JDBC超时设置2. 连接池超时设置3. MyBatis查询超时4. 事务超时总结前言 最近备战京东双11,在配置MySQL的超时配置发现有很多地方可以设置。这么多超时...
    99+
    2024-04-02
  • Mysql数据库多实例配置的示例分析
    小编给大家分享一下Mysql数据库多实例配置的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!二进制安装: [root@lufengcentos ~]# mkdi...
    99+
    2024-04-02
  • MySQL数据库配置详解
    下面是我生产环境中MySQL的配置详解:[mysqld]mysql服务端配置server-id=1服务ID,每个服务的服务ID不同即可log-bin=mysql-bin定义bin_log的位置和名称,mys...
    99+
    2024-04-02
  • MySQL入门(二) 数据库数据类型详解
    序言 今天去健身了,感觉把身体练好还是不错的,闲话不多说,把这个数据库所遇到的数据类型今天统统在这里讲清楚了,以后在看到什么数据类型,咱度应该认识,对我来说,最不熟悉的应该就是时间类型这块了。但是通过今天的...
    99+
    2024-04-02
  • docker配置openGauss数据库的方法详解
    For Windows User  在docker中使用openGauss 拉取openGauss镜像 在控制台输入 docker pull enmotec...
    99+
    2024-04-02
  • MySQL 5.5.35 单机多实例配置详解
    一、前言 二、概述 三、环境准备 四、安装MySQL 5.5.35 五、新建支持多实例的配置文件(我这里配置的是四个实例) 六、初始化多实例数据库 七、提供管理脚本 ...
    99+
    2024-04-02
  • 如何进行MySQL数据库中的多实例配置
    今天就跟大家聊聊有关如何进行MySQL数据库中的多实例配置,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。MySQL数据库基础篇之入门基础命令所有的操...
    99+
    2024-04-02
  • Rust入门之函数和注释实例详解
    目录写在前面函数参数语句和表达式返回值注释写在前面 今天我们来学习 Rust 中的函数,最后会捎带介绍一下如何在 Rust 中写注释。也是比较轻量级的一节,大家快速过一下即可。 函数...
    99+
    2024-04-02
  • MySQL数据库——MySQL配置文件(my.ini)详解
    my.ini 是 MySQL 数据库中使用的配置文件,MySQL 服务器启动时会读取这个配置文件,我们可以通过修改这个文件,达到更新配置的目的。 这里以 Windows 系统下的 my.ini 配置文件为样板,讲解 MySQL 配置文件中的...
    99+
    2023-09-02
    数据库 mysql 服务器
  • MYSQL数据库多实例的安装配置mysql_multi启停实战
    一、多实例的应用场景:1、资金紧张型公司的选择当公司业务访问量不太大,又舍不得花钱,但同时又希望不同业务的数据库服务各自独立,而且需要主从同步进行等技术提供备份或读写分离服务时,使用多实例是最好不过的。2、...
    99+
    2024-04-02
  • MySQL数据库配置信息查看与修改方法详解
    目录摘要查看查看数据基本信息查询sql_mode查看在配置文件中定义的变量查看mysql的服务当前运行时的变量查看MySQL默认认证方式修改MySQL的系统变量根据变量修改的方式根据变量的生效范围总结摘要 当在不同团队间...
    99+
    2022-06-23
    mysql 查看配置 查看mysql配置文件 mysql 修改配置
  • Python入门之三角函数sin()函数实例详解
    描述 sin()返回的x弧度的正弦值。 语法 以下是sin()方法的语法: importmath math.sin(x) 注意:sin()是不能直接访问的,需要导入math模块,然后通过math静态...
    99+
    2022-06-04
    函数 详解 实例
  • Python入门之三角函数tan()函数实例详解
    描述 tan() 返回x弧度的正弦值。 语法 以下是 tan() 方法的语法: import math math.tan(x) 注意:tan()是不能直接访问的,需要导入 math 模块,然后通...
    99+
    2022-06-04
    函数 详解 实例
  • 多机配置mysql数据库的详细步骤
    下面讲讲关于多机配置mysql数据库的详细步骤,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完多机配置mysql数据库的详细步骤这篇文章你一定会有所受益。一主多从配置环境:&nb...
    99+
    2024-04-02
  • Android入门之使用SQLite内嵌式数据库详解
    目录介绍SQLite常用的三个类介绍SQLiteOpenHelper类的使用public void onCreatepublic void onUpgrade使用SQLite操作数据...
    99+
    2022-12-22
    Android SQLite内嵌式数据库 Android SQLite 数据库 Android SQLite
  • 详解Springboot之整合JDBCTemplate配置多数据源
    目录一、前言二、配置文件三、数据源配置类一、前言 现在在我们的项目中,使用多数据源已经是很常见的,下面,这里总结一下springboot整合jdbcTemplate配置多数据源的代码...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作