mysql8.0rpm安装

本文介绍了一种通过RPM包安装MySQL的方法。首先从官方网站下载适用于特定操作系统的MySQL RPM安装包,然后上传到Linux服务器并解压。接下来,仅安装四个必要的RPM包,并解决可能遇到的组件冲突问题。最后,启动MySQL服务并设置密码。

我们知道mysql 有多种安装方式,yum,rpm,编译安装等。

今天我们就来使用rpm包安装方式

1.下载mysql rpm 安装包 。选择对应的操作系统版本 官网地址:如下

Download MySQL Community Server

img

2.上传tar 包到linux 服务器 并解压。

img

3.解压结果如上图,会产生多个rpm包,我们不会用到这么多,只会用到其中的四个,依次执行下面命令(具体到版本号有差别,请注意)

rpm -ivh mysql-community-common-5.7.22-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.22-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.22-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.22-1.el7.x86_64.rpm

4.安装过程中会出现以下提示。

img

这时候需要卸载相关组件。

[root@VM_0_11_redhat tools]# rpm -qa | grep postfix

postfix-2.10.1-6.el7.x86_64

[root@VM_0_11_redhat tools]# rpm -qa | grep mariadb

mariadb-libs-5.5.52-1.el7.x86_64

[root@VM_0_11_redhat tools]# rpm -ev postfix-2.10.1-6.el7.x86_64

Preparing packages…

postfix-2:2.10.1-6.el7.x86_64[root@VM_0_11_redhat tools]# rpm -ev mariadb-libs-5.5.52-1.el7.x86_64

Preparing packages…

mariadb-libs-1:5.5.52-1.el7.x86_64

img

如果启用过程中缺少其他组件,记得yum 安装。

img

  1. systemctl start mysqld 启动mysql
  2. grep password /var/log/mysqld.log 查看密码
  3. 登录mysql
  4. 修改密码

img

. 登录mysql
4. 修改密码

[外链图片转存中...(img-u3tuMl7E-1618643109153)]

过程就到此结束了

<think>首先,用户查询的是如何在CentOS系统上使用RPM方式安装MySQL 8.0后,以mysql用户(而非root用户)启动和使用MySQL。用户提供了多个引用,我需要参考这些引用,但也要确保回答正确。 从引用中: - 引用[1]提到在CentOS系统下使用RPM方式安装MySQL 8.0社区版。 - 引用[2]给出了具体的安装命令序列,包括安装rpm包和一些依赖。 - 引用[3]提到删除mariadb相关包和安装引导包。 - 引用[4]显示安装后的包列表。 - 引用[5]似乎是一个长字符串,可能表示如何找到rpm安装包,但内容被截断。 用户的核心问题是:安装后以mysql用户启动和使用MySQL。 在MySQL安装中,默认情况下,MySQL服务是以mysql用户运行的。这是标准做法,因为MySQL安装时会创建一个专门的mysql用户来运行服务,以提高安全性。 回想标准安装过程: 1. 安装MySQL RPM包。 2. 初始化MySQL(例如,使用mysqld --initialize)。 3. 启动mysqld服务(使用systemctl start mysqld)。 4. MySQL服务默认以mysql用户身份运行。 在引用[2]中,命令序列包括安装各种rpm包,然后启动服务。但没有指定用户;它应该是自动处理的。 用户指定“以mysql用户启动和使用”,但默认就是这样的。所以,我需要确认并指导用户如何确保这一点。 步骤分解: - **安装MySQL RPM包**:参考引用[2],按顺序安装包。 - **初始化MySQL**:在安装后,通常需要初始化数据目录。这可以使用`mysqld --initialize`或`mysqld --initialize-insecure`来完成。初始化过程会创建mysql用户和组,并设置数据目录的权限。 - **启动服务**:使用`systemctl start mysqld`。服务文件(如mysqld.service)指定了运行用户为mysql。 - **使用MySQL**:作为普通用户,你可以使用mysql客户端连接到服务器。mysql客户端不需要root权限;你可以以任何用户运行它,但需要权限来访问数据库。 确保以mysql用户启动: - 检查服务文件:在CentOS中,服务文件通常是`/usr/lib/systemd/system/mysqld.service`。打开它,确认有`User=mysql`和`Group=mysql`。 - 如果服务文件正确,启动服务时会自动以mysql用户运行。 使用MySQL: - 以非root用户使用,运行`mysql -u root -p`(初始安装后,root用户有密码或临时密码)。 - 然后,可以创建其他用户和数据库。 用户可能担心权限问题,但标准安装应该处理。 参考引用: - 引用[3]提到删除mariadb,以避免冲突。 - 引用[4]显示安装的包列表。 所以,回答应该包括: 1. 安装步骤(简要,因为用户可能已经安装)。 2. 确保服务以mysql用户运行。 3. 如何以普通用户使用MySQL客户端。 结构清晰: - 分步指南。 - 使用系统级指令:行内数学表达式用`$...$`,独立公式用`$$...$$`,但这里可能不需要数学公式。 - 用中文回答。 - 生成相关问题。 - 在引用的段落末尾添加引用标识。 生成相关问题:基于主题,如权限管理、用户创建等。 最终回答结构: 1. 介绍:MySQL默认以mysql用户运行服务。 2. 安装步骤(参考引用)。 3. 初始化MySQL。 4. 启动服务并验证运行用户。 5. 使用MySQL客户端。 6. 相关问题。 </think> ### 在 CentOS 上以 mysql 用户启动和使用 MySQL 8.0RPM 安装方式) MySQL 8.0RPM 安装后,默认会创建一个专用的 `mysql` 用户和组来运行服务(避免使用 root 用户,提升安全性)。以下是详细步骤,确保 MySQL 服务以 `mysql` 用户启动,同时指导您如何以普通用户身份使用 MySQL 客户端。步骤基于 CentOS 7/8 系统,参考了提供的引用内容。 #### 步骤 1: 安装 MySQL 8.0 RPM 包(参考引用[2]和[3]) 在安装前,确保删除系统自带的 MariaDB 包(避免冲突): ```bash # 删除 MariaDB 相关包(如果存在) sudo rpm -qa | grep mariadb sudo rpm -e mariadb-libs-* --nodeps # 强制删除,忽略依赖[^3] ``` 按顺序安装 MySQL RPM 包(从引用[2]提取,更新为通用命令): ```bash # 下载或准备 RPM 包(可从 MySQL 官网或 YUM 仓库获取,参考引用[5]) sudo rpm -ivh mysql-community-common-8.0*.rpm sudo rpm -ivh mysql-community-client-plugins-8.0*.rpm sudo rpm -ivh mysql-community-libs-8.0*.rpm sudo rpm -ivh mysql-community-client-8.0*.rpm sudo yum install -y net-tools perl libaio # 安装依赖 sudo rpm -ivh mysql-community-server-8.0*.rpm # 安装服务端[^2] ``` 安装完成后,验证包是否完整: ```bash rpm -qa | grep -i mysql # 应显示类似 mysql-community-server-8.0.x86_64 等包[^4] ``` #### 步骤 2: 初始化 MySQL 并设置数据目录权限 MySQL 安装后需要初始化数据目录,这会自动创建 `mysql` 用户并设置文件权限: ```bash sudo mysqld --initialize --user=mysql # 以 mysql 用户初始化,生成临时 root 密码(检查日志) ``` - 初始化日志通常在 `/var/log/mysqld.log` 中,包含临时 root 密码(如 `A temporary password is generated for root@localhost: 临时密码`)。 - 数据目录(`/var/lib/mysql`)权限自动设置为 `mysql:mysql`: ```bash sudo ls -ld /var/lib/mysql # 应输出 drwxr-x--- mysql mysql ``` #### 步骤 3: 启动 MySQL 服务并验证运行用户 启动服务并确认服务以 `mysql` 用户运行: ```bash sudo systemctl start mysqld # 启动服务 sudo systemctl enable mysqld # 设置开机自启 ``` 验证运行用户: - 检查服务文件:打开 `/usr/lib/systemd/system/mysqld.service`,确认包含: ``` [Service] User=mysql Group=mysql ``` - 查看进程用户: ```bash ps aux | grep mysqld # 应显示 mysql 用户运行,如 mysql 1234 ... /usr/sbin/mysqld ``` 如果服务未以 `mysql` 用户运行,检查权限: ```bash sudo chown -R mysql:mysql /var/lib/mysql # 确保数据目录属主正确 sudo systemctl restart mysqld ``` #### 步骤 4: 以普通用户使用 MySQL 服务以 `mysql` 用户运行后,您(作为系统普通用户)无需 root 权限即可使用 MySQL 客户端: 1. **首次登录**:使用临时 root 密码登录(从步骤 2 的日志获取): ```bash mysql -u root -p # 输入临时密码 ``` 2. **修改 root 密码并创建新用户**(推荐创建普通用户避免用 root): ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; -- 更改 root 密码 CREATE USER '普通用户名'@'localhost' IDENTIFIED BY '用户密码'; -- 创建新用户 GRANT ALL PRIVILEGES ON *.* TO '普通用户名'@'localhost'; -- 授予权限 FLUSH PRIVILEGES; ``` 3. **以普通用户身份使用 MySQL**: ```bash mysql -u 普通用户名 -p # 输入密码后即可操作数据库 ``` - 示例:创建数据库 `CREATE DATABASE testdb;` #### 注意事项 - **安全建议**:MySQL 服务始终以 `mysql` 用户运行是默认行为[^1]。避免手动切换用户启动服务。 - **权限问题**:如果遇到权限错误(如无法访问 socket 文件),运行: ```bash sudo chmod 755 /var/lib/mysql # 确保目录权限正确 ``` - **引用说明**:以上步骤整合了 RPM 安装顺序[^2]、初始化要点[^3]和权限设置。 通过以上步骤,您可以在 CentOS 上成功以 `mysql` 用户运行 MySQL 8.0 服务,并以普通用户身份安全使用数据库。
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值