• linux安装mysql8.0


    1、创建文件夹,可以自己找一个

    我这边是 /opt/env/mysql8.0

    • mkdir mysql8.0
    • 切换到文件夹内 cd mysql8.0

    image.png

    2、下载mysql tar.xz文件

    如果下载的比较慢的,可以在公众号获取:
    关注I am Walker 回复mysql8.0

    wget [https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz](https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz)
    image.png
    下载成功后
    image.png

    因为下载的是tar.xz文件,所以需要先将其解压
    xz -d mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

    解压之后就变成了
    image.png

    3、解压tar文件

    tar -xjvf mysql-8.0.20-linux-glibc2.12-x86_64.tar

    解压后:
    image.png

    修改解压文件夹名称
    将解压后的文件夹的名称修改为mysql-8.0.20,使得文件名不会太长
    mv mysql-8.0.20-linux-glibc2.12-x86_64 ./mysql-8.0.20

    4、创建data文件夹
    • 进入mysql-8.0.20: cd mysql-8.0.20
    • 创建data文件夹mkdir data
    5、添加用户组和密码
     groupadd mysql
    
     useradd -g mysql mysql
    
    • 1
    • 2
    • 3
    6、授权用户

    chown -R mysql.mysql /opt/env/mysql8.0

    7、初始化信息

    先进入mysql解压文件的bin目录下
    我的是 cd /opt/env/mysql8.0/mysql-8.0.20/bin
    ,如果使用的不一样的话,需要进行修改

     ./mysqld --user=mysql --basedir=/opt/env/mysql8.0/mysql-8.0.20 --datadir=/opt/env/mysql8.0/mysql-8.0.20/data/ --initialize
    
    • 1

    执行之后产生的信息,将产生的临时密码复制下来,后面登录要使用
    image.png
    fVsI0-FyTfa>

    8、创建/修改my.cnf

    先执行 vim /etc/my.cnf,然后将下面的内容复制上去

    [mysqld] 
    # mysql的安装目录
    basedir=/opt/env/mysql8.0/mysql-8.0.20
    # data的目录
    datadir=/opt/env/mysql8.0/mysql-8.0.20/data/
    socket=/tmp/mysql.sock
    character-set-server=UTF8MB4
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    9、添加mysqld服务到系统

    进行mysql安装文件目录
    cd /opt/env/mysql8.0/mysql-8.0.20

     cp -a ./support-files/mysql.server /etc/init.d/mysql
    
    • 1
    10、授权及添加服务
      chmod +x /etc/init.d/mysql
    
      chkconfig --add mysql
    
    • 1
    • 2
    • 3
    11、启动mysql服务

    service mysql start
    image.png

    12、查看启动状态

    service mysql status
    image.png

    13、将mysql命令添加到服务
    ln -s /opt/env/mysql8.0/mysql-8.0.20/bin/mysql /usr/bin
    
    • 1

    image.png
    如果存在则进行覆盖

    ln -sf /opt/env/mysql8.0/mysql-8.0.20/bin/mysql /usr/bin
    
    • 1
    14、登录mysql

    执行 mysql -uroot -p
    image.png
    之后输入前边的临时密码

    15、修改root密码

    后面的’root’为需要修改的密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
    
    • 1

    之后刷新一下权限
    flush privileges;
    image.png

    16、修改远程登录生效
    • 进入MySQL数据库 use mysql
    • 修改权限 update user set host=‘%’ where user=‘root’;
    • 刷新权限 flush privileges;
    • 退出 exit;

    image.png

    17、开放防火墙端口

    如果是云服务器,则需要在服务器上开启

    如果是本地的话,则使用

    firewall-cmd --add-port=3306/tcp --permanent
    
    firewall-cmd --reload
    
    • 1
    • 2
    • 3
    18、使用远程客户端进行连接

    这里我是使用navicat的

    问题

    1、bzip2: (stdin) is not a bzip2 file. tar: Child returned status 2 tar: Error is not recoverable: exiting now
    先解压xz文件成tar xz -d 文件

    2、在这里报错:./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
    出现该问题首先检查该链接库文件有没有安装使用 rpm -qa|grep libaio命令进行核查
    运行该命令后发现系统中无该链接库文件
    使用命令,yum install libaio-devel.x86_64安装

    参考:https://www.cnblogs.com/kc19941205/p/14721580.html

  • 相关阅读:
    机器学习/人工智能的笔试面试题目——最优化问题相关问题总结
    kafka_3.7.0(sasl+acl)+管理工具redpanda
    【深度学习】 Python 和 NumPy 系列教程(廿六):Matplotlib详解:3、多子图和布局:subplots()函数
    【Qt】 FFmpeg+Qt windows 32位或者64位环境搭建
    RabbitMQ快速上手以及RabbitMQ交换机的四种模式
    查找字符串中的子串-C版
    【华为机试真题 JAVA】数字反转打印-100
    Polygon zkEVM Binary状态机
    IOS面试题object-c 21-30
    GPU Microarch 学习笔记【2】Unified Memory
  • 原文地址:https://blog.csdn.net/Think_and_work/article/details/126854237