快速部署MySQL 8.0:二进制安装全攻略

通用二进制格式安装 MySQL

安装相关包

bash 复制代码
[root@rocky9 ~]#yum  -y install libaio numactl-libs ncurses-compat-libs

创建用户和组

bash 复制代码
[root@rocky9 ~]#groupadd mysql
[root@rocky9 ~]#useradd -r -g mysql -s /bin/false mysql

准备程序文件

bash 复制代码
[root@rocky9 ~]#wget https://mirrors.aliyun.com/mysql/MySQL-8.0/mysql-8.0.28-linux-glibc2.12-x86_64.tar
[root@rocky9 ~]#tar xf mysql-8.0.28-linux-glibc2.12-x86_64.tar -C /usr/local/
[root@rocky9 ~]#cd /usr/local/
[root@rocky9 local]#ls
bin  games    lib    libexec                                     mysql-router-8.0.28-linux-glibc2.12-x86_64.tar.xz  sbin   src
etc  include  lib64  mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz  mysql-test-8.0.28-linux-glibc2.12-x86_64.tar.xz    share
[root@rocky9 local]#tar xf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz 
[root@rocky9 local]#chown -R root:root /usr/local/mysql/

准备环境变量

bash 复制代码
[root@rocky9 ~]#echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@rocky9 ~]#. /etc/profile.d/mysql.sh 

准备配置文件

bash 复制代码
[root@rocky9 ~]#vim /etc/my.cnf
[mysqld]
datadir=/data/mysql
skip_name_resolve=1
socket=/data/mysql/mysql.sock        
log-error=/data/mysql/mysql.log
pid-file=/data/mysql/mysql.pid
[client]
socket=/data/mysql/mysql.sock

初始化数据库文件并提取root密码

bash 复制代码
#/data/mysql   会自动生成,但是/data/必须事先存在
#方式1:生产随机密码
[root@rocky9 ~]#mysqld --initialize --user=mysql --datadir=/data/mysql

#方式2: 生成 root 空密码
[root@rocky9 ~]#mysqld --initialize-insecure --user=mysql --datadir=/data/mysql

准备服务脚本和启动

bash 复制代码
[root@rocky9 ~]#vim /lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)

[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql
PIDFile=/data/mysql/mysql.pid
ExecReload=/bin/kill -HUP $MAINPID
TimeoutSec=600
Restart=on-failure
RestartSec=5s
LimitNOFILE=10000

[Install]
WantedBy=multi-user.target

修改MySQL密码

bash 复制代码
#修改前面生成的随机密码为指定密码
mysqladmin -uroot -p'密码'   password caoge

#测试登录
mysql -uroot -pcaoge
相关推荐
Decay__39 分钟前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子3 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
万联WANFLOW3 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
小徐不徐说5 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
论文复现现场6 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
Decay__6 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
江华森8 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
心梦缘-雪雁8 小时前
SQL Server 查询数据存在哪个表里
数据库
迪菲赫尔曼8 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测