mysql-8.0.40-1.el7.x86_64.rpm Linux MySQL 保姆级详细安装教程(2025版)

发布于:2025-03-18 ⋅ 阅读:(13) ⋅ 点赞:(0)


一、简洁版

1.1 下载并安装

下载:mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar

官网地址:

https://downloads.mysql.com/archives/community/

也可以在本文最上方资源绑定里下载。介绍:资源包里是裁剪后的,也是安装mysql 的四个必要安装包,直接安装即可。

在这里插入图片描述

  1. 在安装前需要先卸载 mariadb

    输入以下指令查看 mariadb

    rpm -qa | grep mariadb
    

    卸载以上列出的所有的 mariadb 包

    rpm -e --nodeps 安装包1
    rpm -e --nodeps 安装包2
    
  2. 在/usr/local目录下新建 mysql 文件夹,并将下载的文件拖拽到 /usr/local/mysql 下:

    cd /usr/local
    mkdir mysql
    cd mysql
    
  3. 使用以下命令解压

    tar -zxvf mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar
    
  4. 解压后会有很多 *.rpm 的安装包,只需安装 common、libs、client、server 即可(本文最上方资源绑定里只有四个,下载后直接解压安装即可),安装指令如下:

    rpm -ivh --nodeps --force mysql-community-common-8.0.40-1.el7.x86_64.rpm
    
    rpm -ivh --nodeps --force mysql-community-libs-8.0.40-1.el7.x86_64.rpm
    
    rpm -ivh --nodeps --force mysql-community-client-8.0.40-1.el7.x86_64.rpm
    
    rpm -ivh --nodeps --force mysql-community-server-8.0.40-1.el7.x86_64.rpm
    
  5. 初始化 MySQL

    mysqld --initialize
    
  6. 授权防火墙

    # 将 MySQL 授权给防火墙
    chown mysql:mysql /var/lib/mysql -R;
    # 启动 MySQL 服务
    systemctl start mysqld.service;
    # 使 MySQL能用
    systemctl enable mysqld;
    
  7. 查看数据库的初始密码

    cat /var/log/mysqld.log | grep password
    

    root@localhost: rzgz0mzU7Z-f ,冒号之后的就是初始密码。

  8. 登录数据库

    mysql -uroot -p
    

    回车,输入初始密码。(莫慌,密码是不显示的)

  9. 修改密码为:123456

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
    

1.2 解决三个问题

  1. 时区问题,登录数据库,输入以下内容。MySQL 以美国时区时间为准,北京时间比美国时间晚8个小时,所以 +8:00

    set global time_zone='+8:00';
    
  2. 开启远程服务。目的:让主机客户端也能访问 Linux 中的 MySQL

    # 创建一个用户, % 是通配符,代表所有用户
    create user 'root'@'%' identified with mysql_native_password by '123456';
    # 授予所有用户权限
    grant all privileges on *.* to 'root'@'%' with grant option;
    # 刷新权限
    flush privileges;
    
  3. exit 退出数据库,开放 3306 端口

    # 开放 3306 端口
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    # 重新启动防火墙
    systemctl restart firewalld.service
    # 重新载入防火墙配置
    firewall-cmd --reload
    

1.3 创建数据库

  • 在宿主机连接 linux 上的数据库,创建数据库,测试连接

    create database demo character set utf8 collate utf8_general_ci;
    use demo;
    create table user(
        id int primary key auto_increment,
        name varchar(20),
        birthday datetime
    );
    
    insert into user(name, birthday) values ('小明', '2000-01-01');
    insert into user(name, birthday) values ('小华', '2001-01-01');
    

二、图文详细版

2.1 下载并安装

下载:mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar

官网地址:

https://downloads.mysql.com/archives/community/

也可以在本文最上方资源绑定里下载。介绍:资源包里是裁剪后的,也是安装mysql 的四个必要安装包,直接安装即可。

  1. 在安装前需要先卸载 mariadb

    输入以下指令查看 mariadb

    rpm -qa | grep mariadb
    

    卸载以上列出的所有的 mariadb 包

    rpm -e --nodeps 安装包1
    rpm -e --nodeps 安装包2
    
  2. 在/usr/local目录下新建 mysql 文件夹,并将下载的文件拖拽到 /usr/local/mysql 下:

    cd /usr/local
    mkdir mysql
    cd mysql
    

    在这里插入图片描述

  3. 使用以下命令解压

    tar -zxvf mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar
    
  4. 解压后会有很多 *.rpm 的安装包,只需安装 common、libs、client、server 即可(本文最上方资源绑定里只有四个,下载后直接解压安装即可),安装指令如下:

    rpm -ivh --nodeps --force mysql-community-common-8.0.40-1.el7.x86_64.rpm
    
    rpm -ivh --nodeps --force mysql-community-libs-8.0.40-1.el7.x86_64.rpm
    
    rpm -ivh --nodeps --force mysql-community-client-8.0.40-1.el7.x86_64.rpm
    
    rpm -ivh --nodeps --force mysql-community-server-8.0.40-1.el7.x86_64.rpm
    

    在这里插入图片描述

  5. 初始化 MySQL

    mysqld --initialize
    
  6. 授权防火墙

    # 将 MySQL 授权给防火墙
    chown mysql:mysql /var/lib/mysql -R;
    # 启动 MySQL 服务
    systemctl start mysqld.service;
    # 使 MySQL能用
    systemctl enable mysqld;
    
  7. 查看数据库的初始密码

    cat /var/log/mysqld.log | grep password
    

    root@localhost: rzgz0mzU7Z-f ,冒号之后的就是初始密码。

  8. 登录数据库

    mysql -uroot -p
    

    回车,输入初始密码。(莫慌,密码是不显示的)
    在这里插入图片描述

  9. 修改密码为:123456

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
    

在这里插入图片描述

1.2 解决三个问题

  1. 时区问题,登录数据库,输入以下内容。MySQL 以美国时区时间为准,北京时间比美国时间晚8个小时,所以 +8:00

    set global time_zone='+8:00';
    
  2. 开启远程服务。目的:让主机客户端也能访问 Linux 中的 MySQL

    # 创建一个用户, % 是通配符,代表所有用户
    create user 'root'@'%' identified with mysql_native_password by '123456';
    # 授予所有用户权限
    grant all privileges on *.* to 'root'@'%' with grant option;
    # 刷新权限
    flush privileges;
    

    在这里插入图片描述
    链接数据库我们发现,无法连接:

    在这里插入图片描述

  3. exit 退出数据库,开放 3306 端口

    # 开放 3306 端口
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    # 重新启动防火墙
    systemctl restart firewalld.service
    # 重新载入防火墙配置
    firewall-cmd --reload
    

    在这里插入图片描述

1.3 创建数据库

  • 在宿主机连接 linux 上的数据库,创建数据库,测试连接

    create database demo character set utf8 collate utf8_general_ci;
    use demo;
    create table user(
        id int primary key auto_increment,
        name varchar(20),
        birthday datetime
    );
    
    insert into user(name, birthday) values ('小明', '2000-01-01');
    insert into user(name, birthday) values ('小华', '2001-01-01');
    

    在这里插入图片描述


END 配置完成