CentOS7.9部署Mysql8(二进制方式)

服务器上已经安装Mysql5.7,3306端口,rpm部署方式。 现需要再安装Mysql8,因此需要采用其他方式安装,现采取二进制方式安装。

1、下载安装包: https://dev.mysql.com/downloads/mysql/![](https://i-blog.csdnimg.cn/direct/e108b5c63b9f4eb1a979580bae6c4e61.png)![](data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw== "点击并拖拽以移动")

2、下载完成后放到

3、

mkdir -p /data/mysql8

cd /data/mysql8

mkdir data

mkdir tmp

mkdir logs

cd /usr/local/src

mkdir -p /application/

mv ./mysql-8.4.7-linux-glibc2.17-x86_64.tar.xz /application/mysql8

4、

useradd -s /sbin/nologin mysql8

chown -R mysql:mysql8 /data/mysql8/

chown -R mysql:mysql8 /application/mysql8/

chmod -R 755 /data/mysql8

5、添加环境变量

echo 'export PATH=$PATH:/application/mysql8/bin' >> /etc/profile

source /etc/profile

6、创建配置文件:

1)/etc/my8.cnf

mysqld

user=mysql8

basedir=/application/mysql8

datadir=/data/mysql8/data

socket=/data/mysql8/mysql.sock

pid-file=/data/mysql8/mysql.pid

log-error=/data/mysql8/logs/error.log

tmpdir=/data/mysql8/tmp

server_id=80

bind-address=0.0.0.0 #可远程连接

port=3380 #绑定端口为3380

character-set-server=utf8mb4

lower_case_table_names=1 #不区分大小写

max_allowed_packet=128M

default_storage_engine=InnoDB

mysqlx=0 #关闭mysqlx

mysql

socket=/data/mysql8/mysql.sock

client

socket=/data/mysql8/mysql.sock

2)/etc/systemd/system/mysqld8.service

Unit

Description=MySQL Server

Documentation=man:mysqld(8)

Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html

After=network.target

After=syslog.target

Install

WantedBy=multi-user.target

Service

User=mysql8

Group=mysql8

ExecStart=/application/mysql8/bin/mysqld --defaults-file=/etc/my8.cnf

Restart=on-failure

PrivateTmp=false

PIDFile=/data/mysql8/mysql.pid

LimitNOFILE=65535

Restart=on-failure

RestartPreventExitStatus=1

PrivateTmp=false

7、数据初始化:--lower-case-table-names=1 重要! 否则默认0,初始化后不可更改

/application/mysql8/bin/mysqld --initialize-insecure --user=mysql8 --basedir=/application/mysql8 --datadir=/data/mysql8/data --lower-case-table-names=1 --log-error=/data/mysql8/logs/mysql8_error.log

8、设置

systemctl daemon-reload # 重新加载服务配置

systemctl start mysqld8.service # 启动服务

systemctl enable mysqld8.service # 开机自启

systemctl status mysqld8.service # 查看状态(确保为active running)

关闭:systemctl stop mysqld8.service

启动:systemctl start mysqld8.service

重启:ystemctl restart mysqld8.service

9、看error.log是否说明root用户初始密码为空

登录Mysql8:

mysql -S /data/mysql8/mysql.sock

1)修改root密码

2)使root可以远程连接登录数据库

3)。。。

相关推荐
萧寂1734 小时前
vue导出数据到excel
1024程序员节
wwlsm_zql5 小时前
「赤兔」Chitu 框架深度解读(十二):分布式并行初始化与管理
人工智能·1024程序员节
siriuuus5 小时前
MySQL 慢查询日志及优化
mysql·1024程序员节
筵陌5 小时前
MYSQL表的操作
数据库·mysql·1024程序员节
hazy1k5 小时前
51单片机基础-红外遥控(NEC协议)
stm32·单片机·嵌入式硬件·51单片机·1024程序员节
不见长安在5 小时前
Jvm资料整理
jvm·1024程序员节
如果丶可以坑5 小时前
maven无法获取依赖问题
java·maven·1024程序员节
羊村里的大灰狼5 小时前
Windows下载安装配置rabbitmq
1024程序员节
B站计算机毕业设计之家6 小时前
Python手势识别检测系统 基于MediaPipe的改进SSD算法 opencv+mediapipe 深度学习 大数据 (建议收藏)✅
python·深度学习·opencv·计算机视觉·1024程序员节