文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MySQL8.0.20单机多怎么部署

2023-06-30 13:50

关注

这篇文章主要介绍“MySQL8.0.20单机多怎么部署”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL8.0.20单机多怎么部署”文章能帮助大家解决问题。

0.环境需要

准备Linux环境(系统:CentOS7)
2.准备MySQL安装包(版本:8.0.20)
3.安装方式为:msyql解压安装

1.安装步骤

1.下载解压安装的mysql安装包文件

2.上传解压缩(我这里的上传为:xhell,当然也可使用其他方式)

## 创建mysql目录mkdir -p /usr/app/mysql## 移动到目录下cd /usr/app/mysql## 使用xhell上传文件到服务器## 解压后重命名tar -zxvf mysql-8.0.20-el7-x86_64.tar.gzmv mysql-8.0.20-el7-x86_64 mysql-8.0

3.在mysql目录创建创建数据文件存放路径并赋权

## 创建各实例数据存放目录mkdir -p /usr/app/mysql/mysql-8.0/{3306,3307,3308}/data## 创建各个mysql对应error日志mkdir -p /usr/app/mysql/mysql-8.0/{3306,3307,3308}/logtouch /usr/app/mysql/mysql-8.0/3306/log/error.logtouch /usr/app/mysql/mysql-8.0/3307/log/error.logtouch /usr/app/mysql/mysql-8.0/3308/log/error.log## 创建mysql用户组及用户groupadd mysqluseradd -g mysql mysql## 目录归属赋权chown -R mysql:mysql /usr/app/mysql

4.配置my.cnf文件

# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html[client]default-character-set=utf8mb4[mysqld]user=mysqlbasedir=/usr/app/mysql/mysql-8.0lower_case_table_names=1[mysqld_multi]mysqld=/usr/app/mysql/mysql-8.0/bin/mysqld_safemysqladmin=/usr/app/mysql/mysql-8.0/bin/mysqladminlog=/usr/app/mysql/mysql-8.0/mysqld_multi.log# 3306 数据库实例[mysqld3306]port=3306server_id=1mysqld=mysqldmysqladmin=mysqladmindatadir=/usr/app/mysql/mysql-8.0/3306/datasocket=/tmp/mysql_3306.socklog-error=/usr/app/mysql/mysql-8.0/3306/log/error.logpid-file=/usr/app/mysql/mysql-8.0/3306/mysql3306.pid## skip-grant-tables #用于跳过密码登录character_set_server=utf8mb4init_connect='SET NAMES utf8mb4'lower_case_table_names=1explicit_defaults_for_timestamp=true# 3307 数据库实例[mysqld3307]port=3307server_id=2mysqld=mysqldmysqladmin=mysqladmindatadir=/usr/app/mysql/mysql-8.0/3307/datasocket=/tmp/mysql_3307.socklog-error=/usr/app/mysql/mysql-8.0/3307/log/error.logpid-file=/usr/app/mysql/mysql-8.0/3307/mysql3307.pid# lc_messages_dir=/usr/local/mysql/share/english## 默认最大连接数设置# max_connections=300character_set_server=utf8mb4init_connect='SET NAMES utf8mb4'lower_case_table_names=1explicit_defaults_for_timestamp=true# 3308 数据库实例[mysqld3308]port=3308server_id=3mysqld=mysqldmysqladmin=mysqladmindatadir=/usr/app/mysql/mysql-8.0/3308/datasocket=/tmp/mysql_3308.socklog-error=/usr/app/mysql/mysql-8.0/3308/log/error.logpid-file=/usr/app/mysql/mysql-8.0/3308/mysql3308.pid# lc_messages_dir=/usr/local/mysql/share/englishcharacter_set_server=utf8mb4init_connect='SET NAMES utf8mb4'lower_case_table_names=1explicit_defaults_for_timestamp=true

5.初始化各实例数据库

/usr/app/mysql/mysql-8.0/bin/mysqld --defaults-file=/etc/my.cnf --datadir=/usr/app/mysql/mysql-8.0/3306/data/ --initialize/usr/app/mysql/mysql-8.0/bin/mysqld --defaults-file=/etc/my.cnf --datadir=/usr/app/mysql/mysql-8.0/3307/data/ --initialize/usr/app/mysql/mysql-8.0/bin/mysqld --defaults-file=/etc/my.cnf --datadir=/usr/app/mysql/mysql-8.0/3308/data/ --initialize

注意记住临时密码,后面登录时使用,例如:

2022-04-04T15:12:39.011998Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: sJH):ayhH5cW
2022-04-04T15:14:24.214337Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: <>y)qhyh/4E7
2022-04-04T15:15:32.283026Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: s7qrjzwqI<wd

6.设置msyql环境变量

添加了环境变量,操作系统才能够自己找到mysql、mysqld_multi等命令的位置

## 在/etc/profile 文件末尾添加export PATH=/usr/app/mysql/mysql-8.0/bin:$PATH## 使环境变量生效source /etc/profile

7.启动与查看 mysql 服务(需指定配置文件)

## 启动mysqlmysqld_multi --defaults-file=/etc/my.cnf start 3306mysqld_multi --defaults-file=/etc/my.cnf start 3307mysqld_multi --defaults-file=/etc/my.cnf start 3308## 查看mysql服务mysqld_multi --defaults-file=/etc/my.cnf report

启动不成功,查看 mysqld_multi.log 日志或各实例目录下的错误日志

cat /usr/app/mysql/mysql-8.0/mysqld_multi.log
cat /usr/app/mysql/mysql-8.0/3306/log/error.log

8.设置远程访问密码

## 服务器登录 (注意:另外两个实例同样如此。)mysql -uroot -p -S /tmp/mysql_3306.sock## 输入上面初始化数据库时的临时密码## 设置本地访问密码,例如:Mysql@123,注意密码为高安保等级(例如大小写和特殊字符的组合),不然无法使用其他操作ALTER USER 'root'@'localhost' IDENTIFIED BY 'Mysql@123';## 进入mysql数据use mysql;## 更新root信息update user set host='%' where user='root';## 刷新flush privileges;# 授权root用户可以远程登陆GRANT ALL ON *.* TO 'root'@'%';## 远程连接设置ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Mysql@123';## 刷新flush privileges;

9.防火墙开启访问端口(获取关闭防火墙)

## 开放防火墙端口firewall-cmd --zone=public --add-port=3306/tcp --permanentfirewall-cmd --zone=public --add-port=3307/tcp --permanentfirewall-cmd --zone=public --add-port=3308/tcp --permanent## 查看开放端口firewall-cmd --list-port## 配置生效firewall-cmd --reload

关于“MySQL8.0.20单机多怎么部署”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯