当前位置:首页 > 行业动态 > 正文

如何在CentOS 7上安装数据库?

在CentOS 7上安装MySQL数据库,需先更新系统并安装EPEL,然后添加MySQL Yum Repository,安装MySQL服务并启动。

CentOS7 数据库安装详细指南

如何在CentOS 7上安装数据库?  第1张

在 CentOS7 上安装 MySQL 数据库是一项常见且重要的任务,本文将详细介绍如何在 CentOS7 上安装和配置 MySQL,以下是详细的步骤和说明:

一、安装前的环境检查

1、确保自己在 root 用户下进行

在 root 用户下操作可以确保有足够的权限执行安装和配置任务,如果当前不是 root 用户,可以使用以下命令切换到 root 用户:

     su

2、检查系统上是否已有 MySQL 或 MariaDB 运行

首先检查是否有 MySQL 进程正在运行:

     ps ajx | grep mysql
     ps ajx | grep mariabd

如果发现有相关进程,需要停止这些进程:

     systemctl stop mysqld

3、检查是否有 MySQL 的安装包

查看系统中是否已经安装了 MySQL 相关的软件包:

     rpm -qa | grep mysql

如果存在 MySQL 安装包,并且之前没有使用过 MySQL,可以删除这些包:

     yum -y remove $(rpm -qa | grep mysql)

4、检查并删除残留的配置文件

如果存在 MySQL 的配置文件,也需要将其删除:

     rm -rf /etc/my.cnf

检查是否有 MySQL 客户端和服务端文件:

     which mysql
     which mysqld

二、下载官方的 MySQL 安装包

1、查询 Linux 版本

确认你的系统版本,以便下载合适的安装包:

     cat /etc/redhat-release

2、下载 MySQL Yum Repository

访问 [MySQL Yum Repository](http://repo.mysql.com),找到适合你系统的安装包并下载,对于 CentOS7,你可以下载mysql57-community-release-el7.rpm。

使用 wget 命令下载:

     wget http://repo.mysql.com/mysql57-community-release-el7.rpm

3、安装 MySQL Yum Repository

使用以下命令安装下载的 RPM 包:

     rpm -ivh mysql57-community-release-el7.rpm

4、检查是否安装成功

确认安装是否成功:

     ls /etc/yum.repos.d/ | grep 'mysql'

三、开始安装 MySQL

1、安装 MySQL 服务

使用以下命令安装 MySQL 服务器:

     yum install -y mysql-community-server

如果遇到 GPG 密钥过期的问题,可以更新 GPG 密钥:

     rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

然后再次尝试安装:

     yum install -y mysql-community-server

2、检查是否安装成功

确保 MySQL 安装成功:

     rpm -qa | grep mysql

四、启动并配置 MySQL

1、启动 MySQL 服务

使用以下命令启动 MySQL:

     systemctl start mysqld

检查 MySQL 进程是否启动成功:

     ps ajx | grep mysqld

查看 MySQL 服务的运行状态:

     systemctl status mysqld.service

2、获取临时密码并登录

MySQL 5.7 为 root 用户随机生成了一个密码,可以在日志文件中找到:

     grep 'temporary password' /var/log/mysqld.log

使用临时密码登录 MySQL:

     mysql -uroot -p

输入临时密码后,更改 root 用户的密码,设置一个符合复杂度要求的密码:

     ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';

如果不想设置复杂的密码,可以修改密码策略:

     set global validate_password_policy=0;
     set global validate_password_length=1;
     ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';

确保配置生效:

     flush privileges;

3、配置远程访问

如果需要远程访问 MySQL,可以授予权限:

     GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
     flush privileges;

确保防火墙开放 MySQL 端口(默认是 3306):

     firewall-cmd --zone=public --add-port=3306/tcp --permanent
     firewall-cmd --reload

五、配置字符集和其他选项

1、编辑 my.cnf 文件

打开并编辑 MySQL 配置文件:

     vim /etc/my.cnf

确保配置文件中包含以下内容,以支持中文字符集:

     [client]
     default-character-set=utf8mb4
     [mysql]
     default-character-set=utf8mb4
     [mysqld]
     character-set-server=utf8mb4
     collation-server=utf8mb4_general_ci

保存并退出编辑器,然后重启 MySQL:

     systemctl restart mysqld

六、验证安装结果

1、登录并查看数据库列表

使用新的密码登录 MySQL:

     mysql -uroot -p

查看所有数据库:

     SHOW DATABASES;

如果看到类似以下的输出,表示安装成功:

     +--------------------+
     | Database           |
     +--------------------+
     | information_schema |
     | mysql              |
     | performance_schema |
     | sys                |
     +--------------------+

2、退出 MySQL

输入exit 或按Ctrl + D 退出 MySQL。

七、常见问题及解决措施

Q1: 如何更改 MySQL 的监听地址?

A1: 要更改 MySQL 的监听地址,请编辑/etc/my.cnf 文件,找到[mysqld] 部分,添加或修改bind-address 参数,要将监听地址改为0.0.0.0,可以添加以下行:

   bind-address = 0.0.0.0

然后重启 MySQL:

   systemctl restart mysqld

Q2: 如果忘记 root 密码怎么办?

A2: 如果忘记了 root 密码,可以通过跳过授权表的方式重置密码,具体步骤如下:

1. 停止 MySQL 服务:

      systemctl stop mysqld

2. 使用跳过授权表的方式启动 MySQL:

      mysqld_safe --skip-grant-tables &

3. 登录 MySQL:

      mysql -uroot

4. 重置 root 密码:

      FLUSH PRIVILEGES;
      ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';

5. 重启 MySQL:

      systemctl restart mysqld
0