centos7安装mysql8.x数据库

  • Post author:
  • Post category:mysql


  1. 下载mysql8.x安装包

    在mysql官网(https://www.mysql.com/)下载mysql社区版安装包(免费的),我这里下载的是8.0.19

    注意:强烈建议你所要安装的数据库服务器之前没有安装过任何版本的mysql,否则安装过程可能会遇到各种问题。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    选择RPM Bundle,如图:

    在这里插入图片描述

  2. 安装前环境检查

    #检查服务器是否自带有mariadb数据库
    rpm -qa | grep mariadb
    #有则卸载,例如我服务器上的
    rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
    
  3. 把前面下载的压缩包上传到数据库服务器的某个目录(例如softs目录)

  4. 解压mysql到softs目录下的mysql目录

    #命令中的路径请根据实际情况修改
    tar -xvf mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar -C /home/aiyo92/softs/mysql
    
  5. 进入mysql解压目录,依次执行下面的命令

    rpm -ivh mysql-community-common-8.0.19-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-8.0.19-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-8.0.19-1.el7.x86_64.rpm
    yum install numactl
    yum install libaio    //可能会提示已安装,已安装则忽略
    yum install net-tools  //可能会提示已安装,已安装则忽略
    rpm -ivh mysql-community-server-8.0.19-1.el7.x86_64.rpm
    #看看mysql装在什么位置了(其他软件也可以使用whereis命令)
    whereis mysql
    #初始化mysql,这样可以不用密码就可以登录,进去之后再设置密码等
    /usr/sbin/mysqld --initialize-insecure #或直接执行 mysqld --initialize-insecure
    #启动mysql
    mysqld --user=root &
    #查看mysql是否正常启动
    ps aux | grep mysql
    #无密码登陆mysql
    mysql -h localhost -u root
    #设置密码
    alter user 'root'@'localhost' identified by 'bitservice';
    #退出mysql命令窗口
    exit;
    #使用密码登录mysql(验证密码是否生效)
    mysql -h localhost -u root -pbitservice
    #选择一个数据库
    use mysql;
    #更新mysql可以在其他机器使用root登陆(默认情况下root用户只能在本机登陆)
    update user set Host='%' where User='root' and Host='localhost';
    #立即生效对表的修改
    flush privileges;
    #注意:对于mysql8.0,通过以上设置之后,其他服务器依然无法远程登录,还需要执行:
    ALTER USER 'root'@'%'  IDENTIFIED WITH mysql_native_password  BY 'bitservice';
    flush privileges;
    
  6. 设置mysql开机自启

    chmod -R 777 /var/lib/mysql
    systemctl enable mysqld.service
    

至此mysql8.x安装完成

  1. 附mysql常用命令

    #启动mysql
    systemctl start mysqld.service
    #结束mysql
    systemctl stop mysqld.service
    #重启mysql
    systemctl restart mysqld.service
    



版权声明:本文为aiyo92原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。