CentOS 7.0如何启动多个MySQL实例教程(mysql-5.7.21)

yizhihongxing

下面就为您详细讲解“CentOS 7.0如何启动多个MySQL实例教程(mysql-5.7.21)”的完整攻略。

准备工作

在开始之前,需要你按照以下步骤进行准备:

  1. 确保你的服务器已经安装了CentOS 7.0系统和MySQL 5.7.21。
  2. 创建一个新的MySQL数据目录,例如:/data/mysql-3307。
  3. 修改MySQL的配置文件my.cnf,在该文件中创建一个新的MySQL实例。

创建新MySQL实例

我们需要创建一个新的MySQL实例,并为其指定新的数据目录和端口号,步骤如下:

  1. 复制MySQL配置文件my.cnf并重命名为my-3307.cnf。
$ sudo cp /etc/my.cnf /etc/my-3307.cnf
  1. 编辑新复制的my-3307.cnf文件,修改MySQL的数据目录和端口号。
# 端口号
port=3307

# 数据目录
datadir=/data/mysql-3307
  1. 创建新的MySQL数据目录。
$ sudo mkdir /data/mysql-3307
  1. 将文件所有者设置为mysql用户。
$ sudo chown -R mysql:mysql /data/mysql-3307
  1. 初始化新的MySQL实例。
$ sudo mysql_install_db --user=mysql --datadir=/data/mysql-3307/

启动新的MySQL实例

完成创建新MySQL实例后,我们需要将其启动。需要注意的是,我们需要为该实例创建一个新的systemd unit文件,以便于在后续操作中进行管理。

  1. 新建一个名为mysql@.service的文件,并编辑此文件。
$ sudo vi /usr/lib/systemd/system/mysql@.service
  1. 在该文件中添加以下内容:
[Unit]
Description=MySQL Database Server
After=network.target

[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/data/mysql-%i/mysqld.pid
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my-%i.cnf $MYSQLD_OPTS
ExecStop=/usr/bin/mysqladmin --defaults-file=/etc/my-%i.cnf -uroot -p shutdown
Restart=on-failure

[Install]
WantedBy=multi-user.target
  1. 启动新的MySQL实例。
$ sudo systemctl start mysql@3307
  1. 确认是否启动成功。
$ sudo systemctl status mysql@3307

示例说明

假设现在我们需要同时启动两个MySQL实例,他们的数据库端口分别为3306和3307,我们可以通过如下方式操作:

  1. 复制MySQL配置文件my.cnf并分别重命名为my-3306.cnf和my-3307.cnf。
$ sudo cp /etc/my.cnf /etc/my-3306.cnf
$ sudo cp /etc/my.cnf /etc/my-3307.cnf
  1. 编辑新复制的my-3306.cnf和my-3307.cnf文件,修改MySQL的数据目录和端口号。

对于my-3306.cnf文件:

# 端口号
port=3306

# 数据目录
datadir=/data/mysql-3306

对于my-3307.cnf文件:

# 端口号
port=3307

# 数据目录
datadir=/data/mysql-3307
  1. 分别创建新的MySQL数据目录。
$ sudo mkdir /data/mysql-3306
$ sudo mkdir /data/mysql-3307
  1. 将文件所有者设置为mysql用户。
$ sudo chown -R mysql:mysql /data/mysql-3306
$ sudo chown -R mysql:mysql /data/mysql-3307
  1. 初始化新的MySQL实例。
$ sudo mysql_install_db --user=mysql --datadir=/data/mysql-3306/
$ sudo mysql_install_db --user=mysql --datadir=/data/mysql-3307/
  1. 新建mysql@.service文件并编辑此文件。
$ sudo vi /usr/lib/systemd/system/mysql@.service
  1. 在该文件中添加以下内容:
[Unit]
Description=MySQL Database Server
After=network.target

[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/data/mysql-%i/mysqld.pid
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my-%i.cnf $MYSQLD_OPTS
ExecStop=/usr/bin/mysqladmin --defaults-file=/etc/my-%i.cnf -uroot -p shutdown
Restart=on-failure

[Install]
WantedBy=multi-user.target
  1. 启动新的MySQL实例。
$ sudo systemctl start mysql@3306
$ sudo systemctl start mysql@3307
  1. 确认是否启动成功。
$ sudo systemctl status mysql@3306
$ sudo systemctl status mysql@3307

以上就是详细的“CentOS 7.0如何启动多个MySQL实例教程(mysql-5.7.21)”攻略过程。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS 7.0如何启动多个MySQL实例教程(mysql-5.7.21) - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • Mysql数据库监听binlog的开启步骤

    下面是详细讲解Mysql数据库监听binlog的开启步骤的完整攻略。 什么是binlog 先来了解一下binlog。MySQL 的二进制日志,即 binlog。它记录了所有更新或修改了数据库数据的操作,包括数据库的更改语句,如 INSERT、UPDATE 和 DELETE 等,以及关闭或重启服务器时的操作等。 为什么要监听binlog 在一些情况下,我们需要…

    database 2023年5月22日
    00
  • SQL Server 数据库的设计详解

    SQL Server 数据库的设计详解 本文将介绍SQL Server数据库设计的详细过程,包括以下几个步骤:确定需求、规划数据模型、设定数据库架构、优化查询性能等。 确定需求 在进行数据库设计之前,首先需要明确需求。针对不同的业务场景、不同的业务需求,所需要的数据项也是不同的。因此,需要充分了解业务,明确业务需求,确定数据库需要存储哪些数据、哪些数据是关键…

    database 2023年5月21日
    00
  • MySQL 出现 The table is full 的解决方法【转】

    时间 2014-08-21 12:18:56  MySQL中文网 原文  http://imysql.com/2014/08/21/mysql-faq-howto-deal-with-table-full.shtml 主题 MySQL 当我们要写入新数据而发生“The table is full”告警错误时,先不要着急,按照下面的思路来逐步分析即可: 1、查…

    MySQL 2023年4月13日
    00
  • 全面了解 Redis 高级特性,实现高性能、高可靠的数据存储和处理

    目录 高性能、高可用、高可扩展性的原理 持久化 RDB持久化 AOF持久化 持久化的配置 RDB配置 AOF配置 持久化的恢复 RDB的恢复 AOF的恢复 RDB和AOF的选择 持久化对性能的影响 数据的丢失问题 事务 事务的优点 实现方式 注意事项 应用场景 发布订阅 lua脚本 管道操作 完整代码地址 总结 Redis 是一种高性能、高可靠的内存数据存储…

    2023年4月10日
    00
  • mysql中写判断语句的方法总结

    下面是针对mysql中写判断语句的方法总结的详细攻略。 1. 判断语句的基本语法 在Mysql中,判断语句的基本语法为: IF(expression1, expression2, expression3) 其中,expression1是需要进行判断的条件表达式,expression2是满足条件时的返回结果,expression3则是不满足条件时的返回结果。 …

    database 2023年5月21日
    00
  • 超详细汇总21个值得收藏的mysql优化实践

    超详细汇总21个值得收藏的MySQL优化实践 在MySQL的使用过程中,优化是非常重要的一个环节。在优化过程中,涉及到的方面包括数据结构、数据库架构、查询语句优化等多个方面。下面将对21个值得收藏的MySQL优化实践进行超详细汇总: 优化架构 1. 数据库服务器的设置 MySQL服务器的设置对于整个数据库的性能有很大的影响。可以进行以下设置优化:- 修改缓存…

    database 2023年5月19日
    00
  • SQL Server评估期已过问题的解决方法

    下面是“SQL Server评估期已过问题的解决方法”的完整攻略,具体过程如下: 问题背景 在使用SQL Server时,如果我们在安装完SQL Server之后,没有输入有效的许可证密钥,那么SQL Server将进入评估期。一旦过了评估期,SQL Server就会停止运行,也就是我们经常遇到的“SQL Server评估期已过”的问题。如果我们没有及时解决…

    database 2023年5月21日
    00
  • 如何使用Python实现数据库的迁移?

    以下是使用Python实现数据库迁移的完整攻略。 步骤1:安装必要的库 在使用Python实现数据库迁移之前,需要安装pymysql和pandas库。可以使用以下命令在命令行中安装这些库: pip install pymysql pandas 步骤2:连接到源数据库 在Python中,可以使用pymysql库连接到MySQL数据库。以下是连接到MySQL数据…

    python 2023年5月12日
    00
合作推广
合作推广
分享本页
返回顶部