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)。。。

相关推荐
u0103055273 天前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u0103055274 天前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝5 天前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节
u0103055275 天前
Java图像处理实战指南
人工智能·1024程序员节
u0103055276 天前
Java AWT鼠标事件全解析
人工智能·1024程序员节
u0103055278 天前
Java实用类应用精讲
人工智能·1024程序员节
u0103055278 天前
Java I/O核心操作实战
人工智能·1024程序员节
u0103055279 天前
ArrayList操作详解与实战应用
人工智能·1024程序员节
u01030552710 天前
Java模块化编程实战指南
人工智能·笔记·1024程序员节
u01030552711 天前
使用BufferedReader读取控制台输入
人工智能·1024程序员节