【部署背景】

公司测试环境需求多个数据库实例,但是只分配一台MySQL机器,所以进行多实例部署。

【部署搭建】

  • 创建软件包路径
  mkdir /data/soft/package      /data/server    /data/dbdata/65001    
  • 下载安装包
cd /data/soft/package
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
  • 查找系统自带的 mysql,并且移除
rpm -qa |grep mysql |xargs -I '{}' rpm -e {} --nodeps
  • 创建 mysql 实例运行用户
useradd mysql
  • 解压 mysql 的压缩包到 /data/server 目录
tar xf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /data/server/
cd /data/server
mv mysql-5.7.30-linux-glibc2.12-x86_64/ mysql_65001
  • 创建第一个数据库实例数据目录,服务目录,日志目录等,并且赋予mysql权限
mkdir /data/dbdata/65001 -p
mkdir /data/server/mysql_65001/etc -p
mkdir /data/server/mysql_65001/logs -p
mkdir /data/server/mysql_65001/mysql_bin/ -p
chown -R mysql:mysql /data/server /data/dbdata
  • 初始化,这里要记住初始化密码
cd /data/server/mysql_65001
bin/mysqld --initialize --user=mysql --basedir=/data/server/mysql_4001 --datadir=/data/dbdata/65001
  • 创建了在非加密连接上使用SSL和RSA进行安全传输所需要的SSL证书和key
cd /data/server/mysql_65001
bin/mysql_ssl_rsa_setup --datadir=/data/dbdata/65001/
  • 更改mysql配置文件my.cnf

  • 增加Mysql的错误日志文件
touch /data/server/mysql_65001/logs/mysql_65001.err
  • 启动MySQL
cd /data/server/mysql_65001
chown -R mysql:mysql /data/server /data/dbdata
./bin/mysqld_safe --defaults-file=/data/server/mysql_65001/etc/my.cnf --user=mysql &
netstat -anpt |grep 65001
  • 更改登录密码,并开启root用户远程访问
./bin/mysql -h127.0.0.1 -P65001 -p <初始化的密码>
SET PASSWORD FOR 'root'@localhost=PASSWORD('新密码');
update mysql.user set host = '%' where user = 'root';
flush privileges;
  • 添加系统路径
echo "export PATH=/data/server/mysql_65001/bin:$PATH" >>/etc/profile
source /etc/profile
  • 第二个以后的实例创建步骤和以上一致即可;服务目录自行更改,比如第二个实例目录如下:
/data/server/mysql_65002
/data/dbdata/65002 /data/server/mysql_65002/etc
/data/server/mysql_65002/logs
/data/server/mysql_65002/mysql_bin/
/data/server/mysql_65002/logs/mysql_65002.err

最新文章

  1. .vue文件里引用单独样式和js文件
  2. NoSql数据库初探-mongoDB读操作
  3. Java入门学习知识点汇总
  4. 第十三篇 Integration Services:SSIS变量
  5. NWR协议
  6. Table of Contents - Spring
  7. 8.21 usaco
  8. Word 查找和替换的通配符
  9. PHPCMS V9 如何启用伪静态
  10. Linux raid信息 查看
  11. JDBC+Servlet+jsp(增删查改)
  12. python 闭包计算移动均值及nonlocal的使用
  13. Python编程从入门到实践笔记——if语句
  14. 原生JS面试题
  15. 移动端click事件
  16. golang []byte和string相互转换
  17. jquery完成界面无刷新加载登陆注册
  18. JSz中的静态方法和实例方法的分析
  19. [转]Chart.js入门教程
  20. 索引&amp;切片 切割split

热门文章

  1. TP5.0版本mysql查询语句 闭包
  2. axios的简单的使用
  3. Python中类-带括号与不带括号的区别
  4. 1.3redis小结--配置php reids拓展
  5. Hive——安装以及概述
  6. 鸿蒙内核源码分析(消息队列篇) | 进程间如何异步传递大数据 | 百篇博客分析OpenHarmony源码 | v33.02
  7. P5212-SubString【LCT,SAM】
  8. 学会了这些英文单词,妈妈再也不用担心我学不会Python
  9. 一篇文章搞定Selenium元素定位/封装/数据驱动
  10. Linkerd stable-2.11.0 稳定版发布:授权策略、gRPC 重试、性能改进等!