MySQL 同版本多实例

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL 同版本多实例

环境准备

软件安装位置 数据存放位置 自定义端口
/data/3307 /data/3307/data 3307
/data/3308 /data/3308/data 3308
/data/3309 /data/3309/data 3309


什么意思?同版本多实例?分身术

在windows下面 我们安装软件 不论版本高低,只能安装一个

在linux系统下,一个软件可以安装很多个,故名理解为多实例。

每个服务启动后,都会有一个端口,所以我们修改它的端口 就可以安装多个软件。

应用场景: 同主机下,主从搭建。

前提条件

MySQL 安装参考文档:Mysql 三种安装方式

必须有3306的数据库
/data/app/mysql
在原数据库下 克隆多台

生成3组配置文件

cat > /data/3307/my.cnf <<EOF 
[mysqld]                    
user=mysql                  
basedir=/data/app/mysql     
datadir=/data/3307/data     
socket=/tmp/mysql3307.sock      
port=3307                   
server_id=7                  
EOF
cat > /data/3308/my.cnf <<EOF 
[mysqld]                    
user=mysql                  
basedir=/data/app/mysql     
datadir=/data/3308/data     
socket=/tmp/mysql3308.sock      
port=3308                   
server_id=8                  
EOF
cat > /data/3309/my.cnf <<EOF 
[mysqld]                    
user=mysql                  
basedir=/data/app/mysql     
datadir=/data/3309/data     
socket=/tmp/mysql3309.sock      
port=3309                   
server_id=9                  
EOF

初始化三组数据

mv /etc/my.cnf /etc/my.cnf.bak
mysqld --initialize-insecure --user=mysql --basedir=/data/app/mysql --datadir=/data/3307/data
mysqld --initialize-insecure --user=mysql --basedir=/data/app/mysql --datadir=/data/3308/data
mysqld --initialize-insecure --user=mysql --basedir=/data/app/mysql --datadir=/data/3309/data
mv /etc/my.cnf.bak  /etc/my.cnf

授权

chown -R mysql. /data/*

准备启动脚本

用原数据库命令启动 并指定克隆实例的配置文件


    cat > /etc/systemd/system/mysqld3307.service <<EOF
    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target
    After=syslog.target
    [Install]
    WantedBy=multi-user.target
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/data/app/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf
    LimitNOFILE = 5000
    EOF
    cat > /etc/systemd/system/mysqld3308.service <<EOF
    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target
    After=syslog.target
    [Install]
    WantedBy=multi-user.target
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/data/app/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf
    LimitNOFILE = 5000
    EOF
    cat > /etc/systemd/system/mysqld3309.service <<EOF
    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target
    After=syslog.target
    [Install]
    WantedBy=multi-user.target
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/data/app/mysql/bin/mysqld --defaults-file=/data/3309/my.cnf
    LimitNOFILE = 5000
    EOF

    启动多实例

    systemctl start mysqld3307
    systemctl start mysqld3308
    systemctl start mysqld3309
    $ netstat -tlunp
    tcp6       0      0 :::3306       :::*      LISTEN      3202/mysqld
    tcp6       0      0 :::3307       :::*      LISTEN      4602/mysqld
    tcp6       0      0 :::3308       :::*      LISTEN      5362/mysqld 
    tcp6       0      0 :::3309       :::*      LISTEN      1204/mysqld




    相关实践学习
    如何快速连接云数据库RDS MySQL
    本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
    全面了解阿里云能为你做什么
    阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
    相关文章
    |
    3月前
    |
    存储 关系型数据库 MySQL
    环比、环比增长率、同比、同比增长率 ,占比,Mysql 8.0 实例(最简单的方法之一)(sample database classicmodels _No.2 )
    环比、环比增长率、同比、同比增长率 ,占比,Mysql 8.0 实例(最简单的方法之一)(sample database classicmodels _No.2 )
    154 1
    |
    3月前
    |
    SQL 前端开发 关系型数据库
    全表数据核对 ,行数据核对,列数据核对,Mysql 8.0 实例(sample database classicmodels _No.3 )
    全表数据核对 ,行数据核对,列数据核对,Mysql 8.0 实例(sample database classicmodels _No.3 )
    65 0
    全表数据核对 ,行数据核对,列数据核对,Mysql 8.0 实例(sample database classicmodels _No.3 )
    |
    7天前
    |
    关系型数据库 MySQL Linux
    MySQL版本升级(8.0.31->8.0.37)
    本次升级将MySQL从8.0.31升级到8.0.37,采用就地升级方式。具体步骤包括:停止MySQL服务、备份数据目录、下载并解压新版本的RPM包,使用`yum update`命令更新已安装的MySQL组件,最后启动MySQL服务并验证版本。整个过程需确保所有相关RPM包一同升级,避免部分包遗漏导致的问题。官方文档提供了详细指导,确保升级顺利进行。
    49 16
    |
    2月前
    |
    关系型数据库 MySQL
    mysql 5.7.x版本查看某张表、库的大小 思路方案说明
    mysql 5.7.x版本查看某张表、库的大小 思路方案说明
    80 5
    |
    2月前
    |
    关系型数据库 MySQL
    mysql 5.7.x版本查看某张表、库的大小 思路方案说明
    mysql 5.7.x版本查看某张表、库的大小 思路方案说明
    51 1
    |
    2月前
    |
    关系型数据库 MySQL 数据库
    【赵渝强老师】启动与关闭MySQL数据库实例
    MySQL数据库安装完成后,可以通过命令脚本启动、查看状态、配置开机自启、查看自启列表及关闭数据库。本文提供了详细的操作步骤和示例代码,并附有视频讲解。
    |
    3月前
    |
    Java 关系型数据库 MySQL
    【编程基础知识】Eclipse连接MySQL 8.0时的JDK版本和驱动问题全解析
    本文详细解析了在使用Eclipse连接MySQL 8.0时常见的JDK版本不兼容、驱动类错误和时区设置问题,并提供了清晰的解决方案。通过正确配置JDK版本、选择合适的驱动类和设置时区,确保Java应用能够顺利连接MySQL 8.0。
    289 1
    |
    3月前
    |
    关系型数据库 MySQL Java
    Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
    这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
    112 0
    Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
    |
    3月前
    |
    SQL JSON 关系型数据库
    MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
    【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
    214 5
    |
    2月前
    |
    SQL 关系型数据库 MySQL
    MySql5.6版本开启慢SQL功能-本次采用永久生效方式
    MySql5.6版本开启慢SQL功能-本次采用永久生效方式
    46 0