MySQL多实例安装开机自启动服务配置过程

作者:神慕蔡蔡 时间:2024-01-14 14:32:17 

1.mysql多实例

mysql多实例是指在一台或多台机器上跑多个mysql数据库,大大节省开销的费用,方便管理数据内容。

2.环境设备

系统版本安装方式以及版本
centos8mysql5.7(二进制安装)

3.创建数据目录

安装包添加环境变量以及属主等步骤省略,各路神仙都会


[root@clq ~]# mkdir /opt/data/{3306,3307,3308} -p
[root@clq ~]# chown mysql.mysql /opt/data/*

4.分别初始化数据库


[root@192 ~]# mysqld --initialize --datadir=/opt/data/3306 --user=mysql
[root@192 ~]# mysqld --initialize --datadir=/opt/data/3307 --user=mysql
[root@192 ~]# mysqld --initialize --datadir=/opt/data/3308 --user=mysql
#分别保存3个mysql密码
[root@192 ~]# echo 'wxa+r_N6ooYu' > 3306
[root@192 ~]# echo 'faiuehfaowh' > 3307
[root@192 ~]# echo 'fuahfu' > 3308

5.安装perl

Perl提供脚本语言(如sed和awk)的所有功能


[root@clq ~]# yum -y install perl

6.安装mysql需要的包


[root@clq ~]# dnf whatprovides libncurses.so.5
ncurses-compat-libs-6.1-7.20180224.el8.i686 : Ncurses compatibility libraries #查看哪个包提供仓库 :
@System匹配来源:提供 : libncurses.so.5
[root@clq ~]# dnf -y install ncurses-compat-libs (兼容库)

7.配置/etc/my.cnf文件


[root@192 ~]# cat /etc/my.cnf
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe   #安全目录
mysqladmin = /usr/local/mysql/bin/mysqladmin   #管理员登录目录
[mysqld3306]
datadir = /opt/data/3306
port = 3306
socket = /tmp/mysql3306.sock
pid-file = /opt/data/3306/mysql3306.pid
log-error = /var/log/3306.log
[mysqld3307]                    #必须是mysqld3307 不是mysql3307
datadir = /opt/data/3307
port = 3307
socket = /tmp/mysql3307.sock
pid-file = /opt/data/3307/mysql3307.pid
log-error = /var/log/3307.log
[mysqld3308]              
datadir = /opt/data/3308
port = 3308
socket = /tmp/mysql3308.sock
pid-file = /opt/data/3308/mysql3308.pid
log-error = /var/log/3308.log

8.运行数据库

*前提必须指定套接字或者本地ip127.0.0.1进行连接

  • 方法一:[root@clq ~]# mysql -uroot -p't%rIkwKeI5Rl' -P3306 -S /tmp/mysql3306.sock

  • 方法二:[root@clq ~]# mysql -uroot -p't%rIkwKeI5Rl' -P3306 -h127.0.0.1

//分别进入mysql,依次更改密码即可

9.一键启动和开机自启


#mysqld_multi服务脚本复制到/etc/init.d/下
[root@mysql ~]# cp /usr/local/mysql/support-files/mysqld_multi.server /etc/init.d/mysqld_multi
#修改脚本,系统脚本启动的时候会在新的终端重新加载加这一条会在bindir下找到mysqld_multi
basedir=/usr/local/mysql
bindir=/usr/local/mysql/bin
export PATH=$bindir:$PATH
systemctl daemon-reload 系统重新加载服务
开启:
[root@mysql ~]# service mysqld_multi start 3306
[root@mysql ~]# service mysqld_multi start 3307
[root@mysql ~]# service mysqld_multi start 3308
自启动:
[root@mysql ~]# chkconfig mysqld_multi on
[root@mysql ~]#reboot
[root@mysql ~]# ss -antl
State         Recv-Q        Send-Q               Local Address:Port               Peer Address:Port        Process                              
LISTEN        0             80                               *:3306                          *:*                          
LISTEN        0             80                               *:3307                          *:*                          
LISTEN        0             80                               *:3308                          *:*  

#关闭单个mysql,用kill方式杀掉进程即可

来源:https://blog.csdn.net/qq_47945825/article/details/119951005

标签:MySQL,多实例,自启服务
0
投稿

猜你喜欢

  • 连接无法用于执行此操作。在此上下文中它可能已被关闭或无效

    2011-03-15 23:03:00
  • JavaScript解决Joseph问题

    2008-06-21 17:11:00
  • Golang接口使用教程详解

    2024-02-14 02:22:11
  • 手机版远程网站文件删除ASP程序

    2009-02-24 16:23:00
  • Python中的re正则表达式模块

    2022-09-13 15:07:40
  • Django利用cookie保存用户登录信息的简单实现方法

    2021-03-22 16:47:26
  • python查看FTP是否能连接成功的方法

    2023-11-04 13:31:50
  • 使用pipenv管理python虚拟环境的全过程

    2021-08-26 13:05:55
  • 如何在mac下配置python虚拟环境

    2023-06-16 18:09:37
  • python 通过 pybind11 使用Eigen加速代码的步骤

    2021-03-07 06:09:30
  • python类中的self和变量用法及说明

    2022-05-27 10:33:12
  • python自带的http模块详解

    2021-11-03 08:59:22
  • python+opencv实现霍夫变换检测直线

    2021-07-30 04:08:57
  • vscode+PyQt5安装详解步骤

    2021-07-27 23:52:55
  • Python实现文字pdf转换图片pdf效果

    2021-03-10 23:20:03
  • 关于JS中变量的显式申明和隐式申明

    2008-09-12 13:04:00
  • 图片预载ImageLoader 1.1 Release

    2008-11-04 20:04:00
  • js实现拖动缓动效果

    2024-04-29 13:44:28
  • 学习JavaScript设计模式(接口)

    2024-02-25 07:13:53
  • 我对SQL SERVER 存储过程见解

    2009-10-31 18:51:00
  • asp之家 网络编程 m.aspxhome.com