Linux(centos)系统安装部署MySQL8.0数据库(GLIBC版本)

安装前检查服务器glibc版本,下载对应版本包

rpm -qa | grep glibc

mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装

一、下载MySQL

mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装

网站进入mysql官网https://dev.mysql.com/, 进入后滑动到最下面在DOWNLOADS栏中 选择MySQL Community Server(mysql社区版)

libc版本的mysql需要libaio依赖,需要下载libaio依赖安装

将下载的压缩包上传服务器

二、安装依赖 libaio

mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装

复制代码
[root@localhost mysql]# rpm -Uvh libaio-0.3.109-13.el7.x86_64.rpm

三、安装mysql

bash 复制代码
# 解压
[root@localhost mysql]# tar -xvf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
# 移动目录
[root@localhost mysql]# mv mysql-8.0.33-linux-glibc2.12-x86_64 /home/data/mysql8
# 创建数据存放目录
[root@localhost mysql8]# mkdir /home/data/mysql8/data

# 创建用户组
[root@localhost mysql8]# groupadd mysql
[root@localhost mysql8]# useradd -g mysql mysql
# 修改用户文件夹权限
[root@localhost mysql8]# chown -R mysql.mysql /home/data/mysql8

检查用户权限是否修改

生成my.cnf文件

复制代码
[root@localhost data]# touch /etc/my.cnf

编辑my.cnf文件如下:

cnf 复制代码
[mysql]
default-character-set=utf8
# Mysql数据存放的绝对路径
datadir=/home/data/mysql8/data

[mysqld]
port=3306
default_authentication_plugin=mysql_native_password
# 套接字文件 必须在安装目录下
socket = /home/data/mysql8/mysql.sock
# Mysql安装的绝对路径
basedir=/home/data/mysql8
# Mysql数据存放的绝对路径
datadir=/home/data/mysql8/data
character-set-server=utf8
default-storage-engine=InnoDB
collation-server=utf8_unicode_ci
init_connect='SET NAMES utf8'
innodb_buffer_pool_size=512M
innodb_flush_log_at_trx_commit=0
innodb_lock_wait_timeout=31536000
innodb_log_buffer_size=8M
innodb_log_file_size=16M
join_buffer_size=200M
key_buffer_size=400M
log-error=/home/data/mysql8/mysql.log
pid-file=/home/data/mysql8/mysql.pid
log_error_verbosity=1
max_allowed_packet=2000M
max_connections=1000
max_heap_table_size=6400M
myisam_max_sort_file_size=64M
myisam_sort_buffer_size=32M
read_buffer_size=4M
read_rnd_buffer_size=4000M
server_id=1
skip-external-locking=on
sort_buffer_size=256kb
table_open_cache=256
thread_cache_size=16
tmp_table_size=64M
wait_timeout=31536000
interactive_timeout=31536000
sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
group_concat_max_len=10240

[client]
port=3306
default-character-set=utf8
socket = /home/data/mysql8/mysql.sock

再次更改文件夹权限

复制代码
[root@localhost mysql8]# chown -R mysql:mysql /home/data/mysql8

初始化数据库

复制代码
[root@localhost mysql8]# /home/data/mysql8/bin/mysqld --user=mysql --initialize --basedir=/home/data/mysql8 --datadir=/home/data/mysql8/data
# 查看初始密码
[root@localhost mysql8]# vi /home/data/mysql8/mysql.log

修改配置,增加开机启动(注意:此处检查mysql.server文件中的数据存放目录)

复制代码
[root@localhost mysql8]# cp /home/data/mysql8/support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql8]# chmod +x /etc/init.d/mysqld
[root@localhost mysql8]# chmod +x /etc/rc.d/init.d/mysqld
[root@localhost mysql8]# chkconfig --add mysqld
[root@localhost mysql8]# chkconfig --list mysqld

修改环境变量,并重载环境变量文件,打开 /etc/profile 在底部添加如下命令

复制代码
export PATH=$PATH:/home/data/mysql8/bin:/home/data/mysql8/lib
export PATH

[root@localhost mysql8]# source /etc/profile

启动mysql

复制代码
[root@localhost mysql8]# service mysql start

登录MySQL

复制代码
mysql -u root -p
password: 为上一步查看的临时密码

修改密码

复制代码
##如果不修改密码,无法操作数据库
alter user 'root'@'localhost' identified by 'root123'
## 执行完后,重新登录MySQL
退出命令:quit

修改只能本地访问

复制代码
use mysql;

select host from user where user='root';

如果host这里是localhost( 如果不改则远程连接报错,图中已经修改 ),我们可以将其改为 %

复制代码
## 修改语句:
update user set host = '%' where user ='root';

执行完成后刷新配置

复制代码
flush privileges;
相关推荐
YOU OU4 小时前
Redis基础常识与命令
数据库·redis·缓存
Yana.nice6 小时前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
Database_Cool_7 小时前
OLTP 和 OLAP 区别详解:分析型数据库和事务型数据库怎么选(附阿里云 AnalyticDB MySQL 选型指南)
数据库·mysql·阿里云
爱写代码的阿森7 小时前
鸿蒙三方库 | harmony-utils之KvUtil键值型数据库操作详解
数据库·华为·harmonyos·鸿蒙·huawei
Database_Cool_8 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
姜太小白8 小时前
【MySQL】 索引优化实战:解决 WHERE 等值 + IS NULL 查询,TEXT 字段报错 1167 的完整指南
数据库·mysql
窝子面9 小时前
手搓最简前后端协作-node
javascript·数据库
吳所畏惧9 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈9 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习