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;
相关推荐
睡不醒男孩0308234 小时前
第二篇:深入探索开源数据库高可用:构建基于CLup的PostgreSQL生产级高可用与读写分离架构
数据库·postgresql·开源·clup
方便面不加香菜4 小时前
Linux--基础IO(一)
linux·运维·服务器
Micro麦可乐6 小时前
Spring Boot 实战:从零设计一个短链系统(含完整代码与数据库设计)
数据库·spring boot·后端·哈希算法·雪花算法·短链系统
码农阿豪6 小时前
从零到一:Spring Boot快速接入金仓数据库实战
数据库·spring boot·后端
鼎讯信通7 小时前
风电光缆运维提质增效:G-4000A 光缆故障追踪仪破解风场巡检难题
运维·网络·数据库
三十..7 小时前
MySQL 从入门到高可用架构实战精要
运维·数据库·mysql
cfm_29148 小时前
Redis五大基本数据结构底层了解
数据结构·数据库·redis
真实的菜8 小时前
Redis 从入门到精通(十二):典型业务场景实战 —— 排行榜、限流器、秒杀系统、Session 共享
数据库·redis·python
你想考研啊9 小时前
mysql数据库导出导入
数据库·mysql·oracle
mounter6259 小时前
现代 Linux 内存管理的演进与变革:从传统 LRU 到多代架构 MGLRU
linux·服务器·kernel