• ubuntu 20.04 LTS离线安装 MySQL8.0,并配置远程登录


    下载MySQL 8.0.31

    地址:https://dev.mysql.com/downloads/mysql/

    选择 DEB Bundle
    (mysql-server_8.0.31-1ubuntu20.04_amd64.deb-bundle.tar)

    下载依赖项

    wget http://archive.ubuntu.com/ubuntu/pool/main/liba/libaio/libaio1_0.3.112-5_amd64.deb
    wget http://archive.ubuntu.com/ubuntu/pool/main/m/mecab/libmecab2_0.996-10build1_amd64.deb
    
    • 1
    • 2

    上传到服务器

    上传地址,没有则新建

    /root/mysql
    
    • 1

    把 以下3个文件 上传到 上面的目录里

    mysql-server_8.0.31-1ubuntu20.04_amd64.deb-bundle.tar
    libaio1_0.3.112-5_amd64.deb
    libmecab2_0.996-10build1_amd64.deb
    
    • 1
    • 2
    • 3

    解压缩

    cd /root/mysql
    tar -xvf mysql-server_8.0.31-1ubuntu20.04_amd64.deb-bundle.tar
    
    • 1
    • 2

    安装

    dpkg -i *.deb
    
    • 1

    设置mysql 密码

    安装过程中,会弹出设置 mysqlroot用户密码,在文本框中输入 要设置的密码

    修改root密码

    输入如下命令后,要求输入密码,然后进入mysql终端

    mysql -uroot -p
    
    • 1

    root 用户默认加密方式是 auth_socket,即在 本机中不需要密码即可登陆

    use mysql;
    # 更改加密方式
    update user set plugin='caching_sha2_password' where user='root';
    # 设备密码
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'A.com.123456789';
    # 刷新权限
    flush privileges;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    A.com.123456789 即 新密码

    mysql8 创建用户

    先登陆

    mysql -uroot -p
    
    • 1

    执行命令

    create user 'fox'@'%' identified by '999999';
    
    • 1

    999999 即 新密码

    fox 用户授权(全部权限)

    grant all privileges on *.* to 'fox'@'%';
    # 刷新权限
    flush privileges;
    
    • 1
    • 2
    • 3

    创建库名为 fox 的库

    CREATE DATABASE IF NOT EXISTS fox \
    CHARACTER SET utf8mb4 \
    COLLATE utf8mb4_general_ci ;
    
    • 1
    • 2
    • 3

    utf8mb4_bin: 区分大小写的,也区分e和é类字符的
    utf8mb4_genera_ci: 不区分大小写的,也不区分e和é类字符

    开启远程可登陆

    修改配置

    vim /etc/mysql/mysql.conf.d/mysqld.cnf
    
    • 1

    [mysqld]下面修改

    bind-address = 0.0.0.0
    
    • 1

    如果已经存在bind-address,那么把它改为和上面一样

    重启mysql

    systemctl restart mysql
    
    • 1

    有的 ubuntu 会开启防火墙

    iptables

    iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
    
    • 1

    命令

    设置开机并启动

    systemctl enable mysql --now
    
    • 1

    启动

    systemctl start mysql
    
    • 1

    关闭

    systemctl stop mysql
    
    • 1

    重启

    systemctl restart mysql
    
    • 1

    状态

    systemctl status mysql
    
    • 1
  • 相关阅读:
    MySQL库操作
    PAT 1019 General Palindromic Number
    总结 - 组件通用封装思路(组件封装)
    前端面试题--vue
    使用vue-cli搭建SPA项目
    TTKEFU在线客服系统:实时交流,更好地理解客户需求
    react hook---钩子函数的使用,useState,useReducer,useEffect,useRef,useContext,自定义hook
    微信小程序体验版的发布流程
    addr2line快速定位进程异常位置
    el-form重置后input无法输入问题
  • 原文地址:https://blog.csdn.net/wljk506/article/details/127742343