Linux使用二进制包安装MySQL

目录

一、软件包下载

二、上传软件包到Linux根目录

1、使用xftp将软件包上传到根目录

2、解压缩

三、准备工作

四、初始化软件

五、设置MySQL的配置文件

六、配置启动脚本


一、软件包下载

官网下载:MySQL :: Download MySQL Community Server

二、上传软件包到Linux根目录

1、使用xftp将软件包上传到根目录

2、解压缩

css 复制代码
[root@server ~]# cd /
[root@server /]# tar xvf mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar
mysql-test-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz
mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz
mysql-router-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz

[root@server /]# tar xvf mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz

三、准备工作

css 复制代码
[root@server /]# mv mysql-8.0.33-linux-glibc2.17-x86_64-minimal /usr/local/mysql
[root@server /]# cd /usr/local/mysql
[root@server mysql]# groupadd mysql     # 创建名为mysql的用户组

# 创建名为 mysql的系统用户,将其添加到mysql用户组中,并设置其登录shell为/bin/false,以限制该用户的登录权限
[root@server mysql]# useradd -r -g mysql -s /bin/false mysql 

# 创建一个名为 mysql-files 的目录,用于存放MySQL数据文件,一般存储备份数据
[root@server mysql]# mkdir mysql-files 

# 将mysql-files目录的所有者和所属组设置为mysql用户和组
[root@server mysql]# chown mysql:mysql mysql-files

# 设置mysql-files目录的权限为 750,以确保只有 "mysql" 用户组的成员可以读取、写入和执行该目录
[root@server mysql]# chmod 750 mysql-files

四、初始化软件

css 复制代码
[root@server mysql]# bin/mysqld --initialize --user=mysql 

# 支持ssl,用于安全通信
[root@server mysql]# bin/mysql_ssl_rsa_setup 
[root@server mysql]# bin/mysqld_safe --user=mysql & 
# 使用后台方式以mysql用户身份启动MySQL 服务器,mysqld_safe是一个用于启动和监控 MySQL 服务器的脚本
# 注意:此时上述命令执行完毕处于后台运行状态,需要另行启动一个终端
css 复制代码
[root@server ~]# ps -ef | grep mysql # 查看进程运行状态
[root@server ~]# cd /usr/local/mysql
[root@server ~]# bin/mysql -u root -p
# 报错,需要找到下面的文件进行软连接
[root@server ~]# ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
[root@server ~]# ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
[root@server ~]# bin/mysql -u root -p
Enter password: # 粘贴之前的初始密码
mysql> alter user 'root'@'localhost' identified with mysql_native_password by
'123456'; 修改密码
mysql> flush privileges; # 刷新
mysql>exit
[root@server ~]# ps -ef | grep mysql
[root@server ~]# kill -9 pid号 # 在当前终端关闭运行的mysql

转到另一会话上操作:

五、设置MySQL的配置文件

css 复制代码
[root@server mysql]# vim /etc/my.cnf


# 新建配置文件,输入以下内容:
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
server-id = 1
port = 3306
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
tmpdir = /tmp
socket = /tmp/mysql.sock
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'
default-storage-engine=INNODB
log_error = error.log

六、配置启动脚本

css 复制代码
[root@server ~]# cd /usr/local/mysql/support-files

# 拷贝启动脚本
[root@server support-files]# cp -a mysql.server /etc/init.d/mysql.server 


[root@server support-files]# cd /etc/init.d
[root@server init.d]# vim mysql.server 
        # 增加=之后的内容
        basedir=/usr/local/mysql
        datadir=/usr/local/mysql/data
[root@server init.d]# cd ~
[root@server ~]# systemctl daemon-reload # 重载系统配置
[root@server ~]# systemctl start mysql


[root@server ~]# vim ~/.bash_profile # 设置环境变量需添加如下语句
        export PATH=$PATH:/usr/local/mysql/bin
[root@server ~]# source ~/.bash_profile
[root@server ~]# mysql -uroot -p

由此成功安装MySQL!!!

相关推荐
wtblszn24 分钟前
实验室通风设备远程监控运维管理系统方案
运维
syagain_zsx2 小时前
spdlog实战:日志分级、滚动与性能调优
linux·c++·日志库·二次开发日志库
这个DBA有点耶14 小时前
从症状到根因:数据库监控指标的分层方法与静态/动态阈值策略
数据库·mysql·代码规范
GeW14 小时前
新质生产力路线图Linux、数据库、国产化替代一次讲透
linux
ProcessOn16 小时前
纯干货!MySql实战02:一条SQL更新语句执行流程大探索!
sql·mysql·sql server
aningx16 小时前
cachyos 从 GRUB 切换到 rEFInd
linux
这个DBA有点耶16 小时前
DELETE没删多少数据,表却越来越大——InnoDB删除空洞与页合并失效的根因
数据库·mysql·代码规范
第404号工位17 小时前
40块钱二手瘦客户端,如何跑满家庭物联网中枢?(拒绝Docker爆盘实录)
linux·架构·node.js
对象存储与RustFS17 小时前
网盘限速逼你开会员?用 RustFS 自己搭一个不限速的“私人网盘
服务器·后端·docker
骑着蜗牛撵大象32719 小时前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信