Centos-Linux安装部署MySQL-8.0

linux搭建mysql

1.使用系统的root账户

2.切换到 /usr/local 目录下

3.下载mysql

bash 复制代码
 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz

也可以直接在官方下载最新版本 官方下载 选择linux

4.解压mysql

bash 复制代码
tar xvJf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

5.重命名文件夹

bash 复制代码
mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql-8.0

6.创建data文件夹 存储文件

在/use/local/文件夹下创建data文件夹 存储文件(注意不要在解压文件创建,可能会出现错误)

bash 复制代码
cd /usr/local/
mkdir data 

7.创建用户组以及用户和密码

bash 复制代码
groupadd mysql
 
useradd -g mysql mysql

8.授权用户

bash 复制代码
chown -R mysql.mysql /usr/local/mysql-8.0
chmod 750 /usr/local/mysql/data -R
a.配置环境,编辑/etc/profile文件 执行命令
bash 复制代码
vim /etc/profile
b.在文件里添加下面这句话,保存退出!
bash 复制代码
export PATH=$PATH:/usr/local/mysql-8.0/bin:/usr/local/mysql-8.0/lib
c.刷新资源文件
bash 复制代码
source /etc/profile

9.初始化基础信息

在/usr/local/mysql-8.0/bin目录下执行

bash 复制代码
cd /usr/local/mysql-8.0/bin

./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize

出现错误删除 /usr/local/mysql/data 中的所有文件即可,重新开始即可!

得到临时密码 pXHYAyrxf1&1

10.编辑my.cnf文件

bash 复制代码
vi /etc/my.cnf

[mysql]
default-character-set=utf8
[client]
socket=/var/lib/mysql/mysql.sock
 
[mysqld]
port=3306
user=mysql
general_log = 1
general_log_file= /var/log/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql-8.0
datadir=/usr/local/data
log-bin=/usr/local/data/mysql-bin
innodb_data_home_dir=/usr/local/data
innodb_log_group_home_dir=/usr/local/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
 
[mysqld_safe]
log-error=/usr/local/data/mysql.log
pid-file=/usr/local/data/mysql.pid

11.安装 libaio 环境

切换到/usr/local/mysql-8.0/bin目录下--并安装 libaio 环境

bash 复制代码
cd /usr/local/mysql-8.0/bin
yum install -y libaio

12.添加mysqld服务到系统

bash 复制代码
cp -a /usr/local/mysql-8.0/support-files/mysql.server /etc/init.d/mysql

13.授权以及添加服务

bash 复制代码
chown 777 /etc/my.cnf

chmod +x /etc/init.d/mysql

chkconfig --add mysql

14.启动mysql

bash 复制代码
service mysql start

15.查看启动状态

bash 复制代码
service mysql status

16.将mysql命令添加到服务

bash 复制代码
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin

17.登录mysql mysql -uroot -p 密码使用之前随机生成的密码

18.修改root密码 其中123456是新的密码自己设置

sql 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

19.执行flush privileges使密码生效

bash 复制代码
flush privileges;

20.选择mysql数据库

bash 复制代码
use mysql;

21.修改远程连接并生效

bash 复制代码
update user set host='%' where user='root';

flush privileges;

有错误在解决:QQ群聊308191819

相关推荐
2401_8589368810 分钟前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
Roc.Chang22 分钟前
Ubuntu 下 VLC 无法启动(Segmentation fault)终极解决方案
linux·ubuntu·vlc·媒体播放
松涛和鸣1 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂1 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
wVelpro2 小时前
如何在Pycharm 2025.3 版本实现虚拟环境“Make available to all projects”
linux·ide·pycharm
程序员老舅2 小时前
C++高并发精髓:无锁队列深度解析
linux·c++·内存管理·c/c++·原子操作·无锁队列
雨中风华3 小时前
Linux, macOS系统实现远程目录访问(等同于windows平台xFsRedir软件的目录重定向)
linux·windows·macos
·云扬·3 小时前
MySQL 8.0 Redo Log 归档与禁用实战指南
android·数据库·mysql
爱吃生蚝的于勒3 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习
The森3 小时前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix