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

【Mysql】mysql8.0.26解压包部署方式

版本背景:
操作系统:centos7.3
mysql版本:mysql-8.0.26-linux-glibc2.12-x86_64.tar

一、前期准备

1、检测操作系统自带安装的mysql和mariadb服务,如存在,需卸载

rpm -qa | grep mysql
rpm -qa | grep mariadb
卸载命令,所有查出来的都卸载:
rpm -e --nodeps qt5-qtbase-mysql-5.6.1-10.el7.x86_64
rpm -e --nodeps qt-mysql-4.8.5-13.el7.x86_64
rpm -e --nodeps mariadb-devel-5.5.52-1.el7.x86_64
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64

2、开放mysql指定的防火墙端口,可自定义

firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --list-ports

3、新建非root用户,用户名和用户组可根据实际情况处理

groupadd test
useradd -g test -m test
passwd test

二、安装工作

1、上传MySQL8.0.26安装包到目录下,并解压重命名

tar -xvf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz -C /opt/
cd /opt/
mv mysql-8.0.26-linux-glibc2.12-x86_64 mysql-8.0.26

2、新增配置文件和数据目录

cd mysql-8.0.26
mkdir data
touch my.cnf

附示例配置文件

[client]
port=3306
socket=/tmp/mysql.sock[mysqld]
port=3306
#默认使用“mysql_native_password”插件认证
default-authentication-plugin=mysql_native_password
#skip-grant-tables
#datadir和basedir要根据实际情况,修改目录为最大挂载磁盘的目录下
datadir=/opt/mysql-8.0.26/data
basedir=/opt/mysql-8.0.26
socket=/tmp/mysql.sock
#log-error=/opt/mysql-8.0.26/error.log
sql-mode=NO_ENGINE_SUBSTITUTION
lower_case_table_names = 1
max_connections = 1000
innodb_print_all_deadlocks=1
log_bin_trust_function_creators = 1
#定期清理binlog日志,根据实际情况设置
#transaction_isolation='READ-COMMITTED'
#主从同步配置-主,从库改成2即可
server-id=1
log_bin=mysql-bin
binlog_format=mixed
log_bin_trust_function_creators=1
expire_logs_days=7
auto_increment_increment=1
auto_increment_offset=1
log_timestamps=SYSTEMinnodb_buffer_pool_size=20G
sort_buffer_size=16M
join_buffer_size=32M
max_connections=1000
max_allowed_packet=512M
tmp_table_size=64M
max_heap_table_size=64M
innodb_log_buffer_size=32M
innodb_log_file_size=512M
internal_tmp_mem_storage_engine=MEMORY

3、重新赋权

cd /opt
chown -R test:test mysql-8.0.26/

三、启动数据库

切换至非root用户进行后续操作

su test

1、初始化数据库

cd /opt/mysql-8.0.26/bin/
#注意用户名--user=test替换成实际的
./mysqld --user=test --basedir=/opt/mysql-8.0.26  --datadir=/opt/mysql-8.0.26/data/ --lower_case_table_names=1 --initialize

在这里插入图片描述
初始化成功,会生成一个随机的初始mysql登录密码。
2、启动Mysql服务

./mysqld_safe --defaults-file=/opt/mysql-8.0.26/my.cnf  --user=test &

在这里插入图片描述
3、检测数据库是否启动成功

ps -ef|grep mysql

在这里插入图片描述

四、数据库信息更新

1、登录数据库

./mysql -u root -p
密码输入前面生成的随机密码

2、root密码更新

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456789';
flush privileges;

3、设置远程登录

use mysql;
update user set host='%' where user='root';
flush privileges;

五、主从设置

1、主库操作:

1、登录数据库
mysql -h 127.0.0.1 -uroot -p
Enter password:2、新建主从同步账号
mysql> CREATE USER 'repl'@'从库ip' IDENTIFIED WITH mysql_native_password BY '同步账号的密码';
Query OK, 0 rows affected (0.00 sec)3、给主从同步账号赋予REPLICATION权限
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'从库ip';
Query OK, 0 rows affected (0.00 sec)4、更新数据
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)5、查主库状态信息
mysql> SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |      838 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql>

2、从库操作:

1、登录数据库
mysql -h 127.0.0.1 -uroot -p
Enter password:2、建立主从关系
mysql> CHANGE MASTER TO MASTER_HOST='主库ip',MASTER_PORT=主库端口,MASTER_USER ='repl', MASTER_PASSWORD='同步账号的密码',MASTER_LOG_FILE='主库的File值',MASTER_LOG_POS=主库Position值;
Query OK, 0 rows affected, 1 warning (0.02 sec)3、启动从库
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)4、查看主从状态
mysql> show slave status\G
http://www.lryc.cn/news/59301.html

相关文章:

  • 进销存管理系统能为企业带来哪些实际效益?
  • 图片怎么转换成pdf格式?这几个方法帮你一键转换
  • 数据结构exp1_2学生成绩排序
  • 在DongshanPI-D1开箱使用分享与折腾记录实现MPU6050数据读取
  • Nature子刊 定制饮食去除半胱氨酸和蛋氨酸可诱导细胞自毁进而治疗脑瘤?
  • 抛弃 TCP 和 QUIC 的 HTTP
  • 未来公寓智能化设计平台项目(下)
  • 常见分布式消息队列综合对比
  • 怎么邀请主流媒体到现场报道
  • 2023年最强手机远程控制横测:ToDesk、向日葵、Airdroid三款APP免Root版本
  • 用SQL语句操作oracle数据库--数据查询(上篇)
  • 模板学堂|DataEase图表样式解析
  • STM32看门狗
  • 什么是划分子网?网络工程师划分子网有啥技巧?
  • 制作两栏布局的 6+5 种方法:从相当合理到完全错误
  • nvidia-smi 各种命令
  • 实验6 TensorFlow基础
  • Python爬虫基础之如何对爬取到的数据进行解析
  • 【Python游戏】坦克大战、推箱子小游戏怎么玩?学会这些让你秒变高高手—那些童年的游戏还记得吗?(附Pygame合集源码)
  • python3 DataFrame一些好玩且高效的操作
  • 如何从 PowerPoint 导出高分辨率(高 dpi)幻灯片
  • JAVA数据结构之冒泡排序,数组元素反转,二分查找算法的联合使用------JAVA入门基础教程
  • linux对动态库的搜索知识梳理
  • R -- 用psych包做因子分析
  • 既然操作系统层已经提供了page cache的功能,为什么还要在应用层加缓存?
  • Redis应用问题解决
  • Qemu虚拟机读取物理机的物理网卡的流量信息方法
  • 面试题之vue的响应式
  • 聚焦弹性问题,杭州铭师堂的 Serverless 之路
  • NDK RTMP直播客户端二