生产环境中使用通用二进制包安装MySQL

本文详细介绍了如何从MySQL官网下载二进制包,使用XFTP上传至服务器,解压缩并进行必要的准备工作,包括设置用户权限、初始化数据库、配置my.cnf文件,以及创建启动脚本以实现MySQL的自动启动和安全性配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.作用

2.软件包下载

 3.使用xftp将软件包上传到根目录 

4.解压缩

5.使用前的准备

6.初始化软件

7. 设置mysql的配置文件

8. 配置启动脚本

9.验证


1.作用

二进制包:源码包经过成功编译之后产生的包

优点:由于二进制包在发布之前就已经完成了编译的工作,因此用户安装软件的速度较快

注意:在生产环境中通用二进制包安装方法较为常用

2.软件包下载

网址: https://dev.mysql.com/downloads/mysql/

根据上图系统参数里的glibc版本cpu架构选择对应的下载选项

 3.使用xftp将软件包上传到根目录 

4.解压缩

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

1.解压缩后有三个子包

mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz:安装mysql必须的文件

mysql-router-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz:官方提供的一个轻量级中间 件,主要作用是在应用程序与MySQL服务器之间提供透明的路由方式,是高可用性 (HA) 解决方案的构建块

mysql-test-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz:测试框架,用于做mysql 服务的 单元,回归和一致性测试,并提供了运行单元测试和创建新单元测试的工具

2.继续解压

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

5.使用前的准备

[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的用户组
[root@server mysql]# useradd -r -g mysql -s /bin/false mysql 
# 创建名为 mysql的系统用户,将其添加到mysql用户组中,并设置其登录shell为/bin/false,以限制该用户的登录权限
[root@server mysql]# mkdir mysql-files 
# 创建一个名为 mysql-files 的目录,用于存放MySQL数据文件,一般存储备份数据
[root@server mysql]# chown mysql:mysql mysql-files 
# 将mysql-files目录的所有者和所属组设置为mysql用户和组
[root@server mysql]# chmod 750 mysql-files 
# 设置mysql-files目录的权限为 750,以确保只有 “mysql” 用户组的成员可以读取、写入和执行该目录

6.初始化软件

[root@server mysql]# bin/mysqld --initialize --user=mysql 
# 注意:需要复制密码
[root@server mysql]# bin/mysql_ssl_rsa_setup 
# 支持ssl,用于安全通信
[root@server mysql]# bin/mysqld_safe --user=mysql 
# 使用后台方式以mysql用户身份启动MySQL 服务器,mysqld_safe 是一个用于启动和监控 MySQL 服务器的脚本
# 注意:此时上述命令执行完毕处于后台运行状态,需要另行启动一个终端
[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

7. 设置mysql的配置文件

vim /etc/my.cnf # 新建配置文件,输入以下内容:

[client] # 客户端设置
port = 3306 # 默认端口号
socket = /tmp/mysql.sock # 启动套接字
[mysqld]
###############################基础设置#####################################
server-id = 1 # Mysql服务的唯一编号 每个mysql服务Id需唯一
port = 3306 # 端口号 3306
basedir = /usr/local/mysql # mysql安装根目录
datadir = /usr/local/mysql/data # mysql数据文件所在位置 没有改目录则创建
tmpdir = /tmp # 临时目录 比如load data infile会用到
socket = /tmp/mysql.sock # 设置socke文件所在目录
#数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节)
character-set-server = utf8mb4
#数据库字符集对应一些排序等规则,注意要和character-set-server对应
collation-server = utf8mb4_general_ci
#设置client连接mysql时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'
default-storage-engine=INNODB
###############################日志设置#####################################
#数据库错误日志文件
log_error = error.log

8. 配置启动脚本

[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

9.验证

输入

mysql -uroot -p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值