Ubuntu下MySQL9压缩包安装
在Ubuntu下使用压缩包安装MySQL9
安装步骤
1. 下载安装包
-
进入MySQL官网,点击“DOWNLOAD”进入下载页面
-
在下载页面中点击MySQL Community (GPL) Downloads
-
选择MySQL Community Server进入版本选择,由于个人原因不想使用DEB的安装方式(PS:其实就是自己纯属无聊,给自己找事儿干),故选择“Linux - Generic”

-
选择安装包,这里建议选择适合自己Linux版本glibc版本的压缩包,通过命令 ldd --version 就知道自己的版本啦
ldd --version
2. 上传安装包至指定目录
此处个人习惯放到自建目录"/download"下。
3. 解压安装包
- 解压文件
tar -xJvf /download/mysql-9.6.0-linux-glibc2.28-x86_64.tar.xz -C /usr/local/
- 重命名解压文件
mv mysql-9.6.0-linux-glibc2.28-x86_64 mysql9
4. 创建必要文件夹
在mysql9文件夹中创建data文件夹
5. 创建mysql用户以及用户组
- 创建用户组
groupadd mysql
- 创建用户
useradd -r -g mysql mysql
-r 创建系统用户
-g指定用户的用户组
6.修改data文件夹的用户、用户组以及权限
- 修改用户以及用户组
chown -R mysql:mysql data
- 修改读、写、执行权限
chmod -R 755 data
7. 添加环境变量
-
修改
/etc/profile文件,在文件末尾添加export PATH=$PATH:/usr/local/mysql9/bin
-
变量生效,加载环境变量
source /etc/profile -
验证变量是否生效,即在任何目录下执行
mysql --version命令均不包报错,且正常打印MySQL版本号
8. 新增/编辑 配置文件
- 通过以下命令查看mysql默认读取配置文件的顺序
mysqld --verbose --help | grep -A 1 'Default options are read from'
以上命令执行后会在命令行打印出mysql默认读取配置文件的顺序,如下图所示。从图中可以看出默认会到/etc目录下去读取my.cnf配置文件,以确保后续自定义的配置文件生效;若后续初始化数据库时出现实际配置和自己写的配置不一致的情况,根据此顺序排查是否加载到其它配置文件。
由于不想再去创建对应的文件夹,故将配置文件放在/usr/local/etc下,且只添加了一小部分必要的配置,完整配置可以到官网或者自行百度后复制,粘贴然后修改即可;将basedir修改为mysql文件夹的路径,datadir修改为创建的data文件夹的路径。
注:sql_mode配置项和MySQL8有点出入,需要进行修改不能照搬MySQL8.0版本的配置
[mysql]
default-character-set=utf8mb4
socket=/temp/mysql.sock
[mysqld]
port=3306
basedir=/usr/local/mysql9
datadir=/usr/local/mysql9/data
socket=/temp/mysql.sock
character-set-server=utf8mb4
default-storage-engine=INNODB
max_connections=100
lower_case_table_names=1
explicit_defaults_for_timestamp=true
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
[client]
port=3306
default-character-set=utf8mb4
9. 初始化数据库
若是按照本步骤记录一步一步执行,此处可直接执行mysqld命令,不用切到bin目录下。这里由于使用的是--initialize-insecure配置项,所以这里不会在终端打印临时的登录密码,只要终端输出信息中没有ERROR信息即可;后期进入mysql时,直接敲回车进入就行,至于密码后续可自行修改数据库密码。
mysqld --defaults-file=/usr/local/etc/my.cnf --basedir=/usr/local/mysql9 --datadir=/usr/local/mysql9/data --user=mysql --initialize-insecure

10. 复制文件至init.d目录
修改并复制MySQL所在目录中的support-files下mysql.server中的全部文件至/etc/init.d/mysql中。mysql.server文件中的 basedir 和 datadir 需要根据实际路径填写。
cp ./support-files/mysql.server /etc/init.d/mysql
11. 添加服务
- 通过
sysv-rc-conf进行服务的添加,这里的服务名称要和/etc/init.d中文件名称一致,否则后期启动MySQL会提示错误。
sysv-rc-conf --add mysql
这里会提示Unknown option: add这个返回信息,这里可以忽略,可以继续向后执行。
- 通过
sysv-rc-conf设置开机自启
sysv-rc-conf mysql on
- 执行
sysv-rc-conf mysql on检查是否启动成功,需要2、3、4、5均为on即可,如下图
若提示sysv-rc-conf: command not found的错误提示,这里可以看看大佬的文章 Ubuntu使用chkconfig命令时报错:chkconfig: command not found解决办法 。
12. 启动服务
启动MySQL服务systemctl start mysql,通过systemctl status mysql检查MySQL服务运行状态是否为active。
若在启动mysql的时候提示找不到mysql.service的报错,可以先尝试使用 systemctl daemon-reload 命令添加服务
检验是否安装成功
1. 进入MySQL
使用mysql -u root -p命令进入MySQL,此处由于安装的时候使用的是--initialize-insecure配置项,这里没有密码,直接回车进入就行。

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)