当前位置: 首页 > news >正文

mysql 不同版本多实例_MySQL 不同版本多实例

1 规划

MySQL5.6 8.0软件包:

mysql-5.6.46-linux-glibc2.12-x86_64.tar.gzmysql-8.0.13-linux-glibc2.12-x86_64.tar.xz

配置文件     :/data/331{6..8}/my.cnf

数据目录     :/data/331{6..8}

初始化数据

日志目录     :/binlog/331{6..8}

端口       : port=3316,3317,3318server_id   : server_id=16,17,18socket      :/tmp/mysql{56,57,80}.sock

2 软连接不同版本软件,修改环境变量

cd /app/database/

rm -rf ./mysql58  # 删除软链接

ln-s mysql-5.6.46-linux-glibc2.12-x86_64 mysql56ln-s mysql-8.0.13-linux-glibc2.12-x86_64 mysql80

mv/etc/my.cnf /etc/my.cnf.bak

vim/etc/profile

# 注释掉以下信息

#export PATH=/app/database/mysql/bin:$PATH

vim .bash_profile

# 注释掉以下信息

#PATH=$PATH:$HOME/bin:/app/database/mysql/bin#复制一个新窗口

[root@master~]# mysql -V-bash: mysql: command not found

3 准备不同目录

rm -rf /data/331{6..8}/*

rm -rf /binlog/331{6..8}

mkdir -p /data/331{6..8}/data

mkdir -p /binlog/331{6..8}

chown -R mysql.mysql /data/* /binlog/*

4 准备配置文件

cat > /data/3316/my.cnf <

[mysqld]

basedir=/app/database/mysql56

datadir=/data/3316/data

socket=/tmp/mysql56.sock

log_error=/data/3316/mysql.log

port=3316

server_id=16

log_bin=/binlog/3316/mysql-bin

EOF

cat > /data/3318/my.cnf <

[mysqld]

basedir=/app/database/mysql80

datadir=/data/3318/data

socket=/tmp/mysql80.sock

log_error=/data/3318/mysql.log

port=3318

server_id=18

log_bin=/binlog/3318/mysql-bin

EOF

4 初始化数据

# 5.6

/app/database/mysql56/scripts/mysql_install_db --user=mysql --datadir=/data/3316/data --basedir=/app/database/mysql56

# 8.0

/app/database/mysql80/bin/mysqld --initialize-insecure --user=mysql --datadir=/data/3318/data --basedir=/app/database/mysql80

5 准备启动脚本

# 5.6

cat > /etc/systemd/system/mysqld56.service <

[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=/app/database/mysql56/bin/mysqld --defaults-file=/data/3316/my.cnf

LimitNOFILE = 5000

EOF

# 8.0

cat > /etc/systemd/system/mysqld80.service <

[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=/app/database/mysql80/bin/mysqld --defaults-file=/data/3318/my.cnf

LimitNOFILE = 5000

EOF

6 启动多实例

[root@master ~]# netstat -tulnp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1351/sshd

tcp60 0 :::22 :::* LISTEN 1351/sshd

[root@master ~]# systemctl start mysqld56

[root@master ~]# systemctl start mysqld80

[root@master~]# netstat -tulnpActive Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1351/sshd

tcp60 0 :::33060 :::* LISTEN 3229/mysqld

tcp60 0 :::3316 :::* LISTEN 3201/mysqld

tcp60 0 :::3318 :::* LISTEN 3229/mysqld

tcp60 0 :::22 :::* LISTEN 1351/sshd

7 登录多实例数据库

[root@master ~]# /app/database/mysql56/bin/mysql -S /tmp/mysql56.sock

Server version:5.6.46-log MySQL Community Server (GPL)

[root@master~]# /app/database/mysql80/bin/mysql -S /tmp/mysql80.sock

Server version:8.0.13 MySQL Community Server -GPL

[root@master~]# vim /etc/profile

export PATH=/app/database/mysql/bin:$PATH

[root@master~]# source /etc/profile

[root@master~]# mysql -V

mysql Ver14.14 Distrib 5.7.28, for linux-glibc2.12 (x86_64) usingEditLine wrapper

[root@master~]# mysql -S /tmp/mysql56.sock

Server version:5.6.46-log MySQL Community Server (GPL)

[root@master~]# mysql -S /tmp/mysql80.sock

Server version:8.0.13 MySQL Community Server -GPL

[root@master~]# mv /etc/my.cnf.bak /etc/my.cnf

[root@master~]# /etc/init.d/mysqld start

Starting MySQL.... SUCCESS![root@master~]# mysql

Server version:5.7.28MySQL Community Server (GPL)

[root@master~]# mysql -uroot -p

Server version:5.7.28MySQL Community Server (GPL)

[root@master~]# mysql -S /tmp/mysql56.sock

Server version:5.6.46-log MySQL Community Server (GPL)

[root@master~]# mysql -S /tmp/mysql80.sock

Server version:8.0.13 MySQL Community Server - GPL

5.7 和 8.0 的客户端可以连其他两个服务端,5.6 的客户端连8.0的服务端会报错

# 8.0

[root@master ~]# /app/database/mysql80/bin/mysql -S /tmp/mysql56.sockServer version:5.6.46-log MySQL Community Server (GPL)[root@master~]# /app/database/mysql80/bin/mysql -S /tmp/mysql.sockServer version:5.7.28MySQL Community Server (GPL)# 5.7

[root@master~]# /app/database/mysql/bin/mysql -S /tmp/mysql56.sockServer version:5.6.46-log MySQL Community Server (GPL)[root@master~]# /app/database/mysql/bin/mysql -S /tmp/mysql80.sockServer version:8.0.13 MySQL Community Server -GPL

# 5.6[root@master~]# /app/database/mysql56/bin/mysql -S /tmp/mysql.sockServer version:5.7.28MySQL Community Server (GPL)[root@master ~]# /app/database/mysql56/bin/mysql -S /tmp/mysql80.sock

ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/local/mysql/lib/plugin/caching_sha2_password.so: cannot open shared objectfile: No such file or directory

相关文章:

  • vue 时间刻度_一个基于Vue的时钟
  • arcgis数据导入mysql_jsp连接MySQL操作GIS地图数据实现添加point的功能代码
  • build vue3 后压缩的文件在哪_vue-cli脚手架之build文件夹三
  • window中mysql bat脚本_MySQL window环境下bat脚本定时备份
  • mybatis 字段名自动转小写_mybatis 返回Map类型key改为小写的操作
  • phppython混合开发_PHP资深开发者谈:缘何放弃PHP改用Python
  • python中init和new_Python中__init__和__new__的区别详解
  • lightgbm原理_LightGBM算法原理小结
  • mysql中以下正确的sql是_MySQL数据库中下面两句话的区别:
  • mysql安装需要jdkcheck_linux(center OS7)安装JDK、tomcat、mysql 搭建java web项目运行环境...
  • mysql模糊查询员工信息_PHP+MySQL实现模糊查询员工信息功能示例
  • mysql regexp_replace_mysql-使用DISTINCT的REGEXP_REPLACE
  • mysql 上周时间_mysql 获取上周1到周日的时间
  • mysql的备份和恢复命令行_使用MySQL命令行备份和恢复数据库
  • java 双向链表循环_Java实现双向循环链表
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【css3】浏览器内核及其兼容性
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • 30天自制操作系统-2
  • interface和setter,getter
  • JavaScript标准库系列——Math对象和Date对象(二)
  • passportjs 源码分析
  • sessionStorage和localStorage
  • SpiderData 2019年2月13日 DApp数据排行榜
  • VUE es6技巧写法(持续更新中~~~)
  • VuePress 静态网站生成
  • 阿里云Kubernetes容器服务上体验Knative
  • 复习Javascript专题(四):js中的深浅拷贝
  • 将 Measurements 和 Units 应用到物理学
  • 聚簇索引和非聚簇索引
  • 聊聊redis的数据结构的应用
  • 前端存储 - localStorage
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 我的zsh配置, 2019最新方案
  • Spring第一个helloWorld
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • 整理一些计算机基础知识!
  • (办公)springboot配置aop处理请求.
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • (一)Linux+Windows下安装ffmpeg
  • .NET Core引入性能分析引导优化
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .NET 反射 Reflect
  • .NET 反射的使用
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表
  • .NetCore实践篇:分布式监控Zipkin持久化之殇
  • .net的socket示例
  • .NET简谈互操作(五:基础知识之Dynamic平台调用)