首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >原有环境部署多个版本(下)

原有环境部署多个版本(下)

原创
作者头像
陈不成i
修改于 2021-06-07 17:47:44
修改于 2021-06-07 17:47:44
7440
举报
文章被收录于专栏:ops技术分享ops技术分享

三.Mysql-5.7单独部署

1.修改配置文件,先单独部署5.7。当前已经运行了一个数据库,那将/etc/my.cfn原有配置拷贝的一旁,等后面再用。 cp -p /etc/my.cnf /tmp/my.cnf.bak

原原来的删除,先将5.7初始化再说 vim /etc/my.cnf

  1. [mysqld_safe]
  2. nice = 0
  3. pid-file = /data/seven/mysqld.pid
  4. [mysqld]
  5. bind-address = 0.0.0.0
  6. user = mysql
  7. basedir = /usr/local/mysql-5.7
  8. datadir = /data/seven
  9. socket = /data/seven/mysql.sock
  10. port = 3307
  11. log-error = /data/seven/mysql.log

2.初始化 /usr/local/mysql-5.7/bin/mysqld --initialize --user=mysql --datadir=/data/seven --basedir=/usr/local/mysql-5.7

没有任何输出就是成功了

四.启动Mysql-5.7

这里将原有的5.6和新的5.7都纳入multi的管理

1.添加多版本控制 vim /etc/my.cnf

  1. [mysql] #客户端
  2. default-character-set=utf8mb4
  3. [mysqld_multi]
  4. #填写任意一个版本的位置就行
  5. mysqld = /usr/local/mysql-5.6/bin/mysqld_safe
  6. mysqladmin = /usr/local/mysql-5.6/bin/mysqladmin
  7. #multi的日志
  8. log = /tmp/mysql_multi.log
  9. user = multi #在每个账号设置一个账户,有管理权限的,让multi可以控制数据库的关闭重启
  10. password = multiadmin
  11. #3306这个是原有的配置,这里整个拷贝过来即可
  12. [mysqld3306]
  13. port = 3306
  14. socket=/usr/local/mysql/mysql.sock
  15. basedir=/usr/local/mysql
  16. datadir=/usr/local/mysql/data
  17. max_connection=200
  18. character-set-server=utf8
  19. default-storage-engine=INNODB
  20. lower_case_table_name=1
  21. max_allowed_packet=16M
  22. log-error=/var/log/mysql/mysql.log
  23. pid-file=/var/log/mysql/mysql.pid
  24. bind-address = 0.0.0.0
  25. #3307的,多加了一个pid-file。
  26. [mysqld3307]
  27. #跳过密码,因为5.7密码写到日志里了,但这里没看到
  28. skip-grant-tables
  29. bind-address = 0.0.0.0
  30. user = mysql
  31. basedir = /usr/local/mysql-5.7
  32. datadir = /data/seven
  33. socket = /data/seven/mysql.sock
  34. port = 3307
  35. log-error = /data/seven/mysql.log
  36. pid-file = /data/seven/mysqld.pid

2.使用multi,这是一个管理的bash脚本,将他复制过来 cp /usr/local/mysql-5.7/support-files/mysqld_multi.server /etc/init.d/ chmod +x /etc/init.d/mysqld_multi.server

要修改一下脚本,默认目录不符合当前的配置 vim /etc/init.d/mysqld_multi.server

代码语言:javascript
复制
basedir=/usr/local/mysql-5.6bindir=/usr/local/mysql-5.6/bin

3.使用 查看配置的3006和3307是否识别到了 /etc/init.d/mysqld_multi.server report

这里可以看到3306是已经启动的

启动单独的3307端口 /etc/init.d/mysqld_multi.server start 3307

已经启动了

验证 netstat -unltp | grep :3306 netstat -unltp | grep :3307

连接 mysql -S /data/seven/mysql.sock

也可以用ip+端口的方式连接,如果用socket连接,那端口和ip就没意义了。使用的将是本地登陆 mysql -uroot -P3307 -h127.0.0.1

连接修改,这里要和上面不同,5.7版本有点小差别 mysql -uroot -P3307 --socket=/data/seven/mysql.sock mysql> use mysql; mysql> UPDATE user SET authentication_string=PASSWORD("123456") WHERE user='root';

五.muliti使用

启动全部实例:/usr/local/mysql/bin/mysqld_multi start

查看全部实例状态:/usr/local/mysql/bin/mysqld_multi report

启动单个实例:/usr/local/mysql/bin/mysqld_multi start 3306

停止单个实例:/usr/local/mysql/bin/mysqld_multi stop 3306

查看单个实例状态:/usr/local/mysql/bin/mysqld_multi report 3306

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 三.Mysql-5.7单独部署
  • 四.启动Mysql-5.7
  • 五.muliti使用
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档