• ubuntu18.04安装mysql5.7并配置数据存储路径


    Ubuntu18.04安装Mysql5.7并配置存储路径

    1、云服务器开通3306端口权限

    如果使用的是云服务器,登录云服务器的控制台,然后配置安全组,开通3306端口允许外部访问。

    2、更新源

    在命令窗口执行:

    sudo apt clean
    sudo apt update
    sudo apt upgrade
    sudo apt autoremove
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    2、安装MySQL5.7

    sudo apt-get install mysql-server
    sudo apt install mysql-client
    sudo apt install libmysqlclient-dev
    
    • 1
    • 2
    • 3

    3、修改mysqld.cnf

    在服务器上找到/etc/mysql/mysql.conf.d中的mysqld.cnf文件,把bind-address=127.0.0.1改成 bind-address= 0.0.0.0

    4、登录mysql

    找到/etc/mysql中的debian.cnf查看里面的登录用户与密码,比如我的是

    user = debian-sys-maint
    password= eSHSYdfO3fdBvqqG
    
    • 1
    • 2

    然后执行命令:

    mysql -u debian-sys-maint -peSHSYdfO3fdBvqqG
    
    • 1

    注意:-p后面直接连接密码。
    在这里插入图片描述

    5、修改密码

    接着执行:

    use mysql;
    update mysql.user set authentication_string=password('ms-1234') where user='root' and Host ='localhost';
    update user set plugin="mysql_native_password"; 
    update user set host="%" where user="root";
    flush privileges;
    exit;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    注意:ms-1234,按实际情况修改为你的密码。

    6、重启Mysql

    执行:

    sudo /etc/init.d/mysql restart
    
    • 1

    查看3306端口是否允许外部访问:

    netstat -lnp|grep 3306

    如果显示的是0.0.0.0开通的端口则说明允许外部访问。

    7、其他命令

    启动 sudo service mysql start 
    停⽌ c
    服务状态 sudo service mysql status
    
    • 1
    • 2
    • 3

    8、配置MySQL数据存放路径

    我使⽤的是阿⾥云,阿⾥云有20G的数据盘,挂载后的路径是/mnt

    8.1、创建文件夹

    mkdir /mnt/data/mysql
    
    • 1

    8.2、复制数据库

    把默认的MySQL数据库复制到/mnt/data/mysql中,然后设置权限:

    sudo cp -R /var/lib/mysql/* /mnt/data/mysql
    sudo chown -R mysql:mysql /mnt/data/mysql
    sudo service mysql stop 
    
    • 1
    • 2
    • 3

    8.3、修改mysqld.cnf指定data路径

    修改/etc/mysql/mysql.conf.d/mysqld.cnf⽂件

    datadir = /mnt/data/mysql
    在这里插入图片描述

    8.4、修改启动文件

    执行:

    sudo vim /etc/apparmor.d/usr.sbin.mysqld

    将
    /var/lib/mysql/ r 
    /var/lib/mysql/** rwk
    改为 
    /mnt/data/mysql/ r
    /mnt/data/mysql/** rwk
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    然后重启MySQL:

    sudo /etc/init.d/apparmor restart

    sudo /etc/init.d/mysql restart

    8.4、验证数据目录

    登录mysql:

    mysql -uroot -pms1234
    
    • 1

    注意:ms1234是密码,使用你先前设置的密码:

    执行:

     show variables like '%dir%';
    
    • 1

    在这里插入图片描述

    后记

    【后记】公众号【轻松学编程】,更多干货文章,图书管理推荐系统、电影推荐系统等源码项目。

    微信【1257309054】,拉你进群,大家一起交流学习。

    公众号

    公众号

    关注我,我们一起成长~~

  • 相关阅读:
    [问题已处理]-虚拟机报错contains a file system with errors check forced
    JDBC2
    1004 Counting Leaves
    【C3AE】《C3AE:Exploring the Limits of Compact Model for Age Estimation》
    【ARM】在NUC977上搭建基于boa的嵌入式web服务器
    专精特新的申请条件
    一、【Photoshop如何根据不同类型图像抠图】
    【SpringMVC】详细了解SpringMVC中WEB-INF 目录资源,视图解析器和静态资源放行的使用。
    【leetcode】【2022/9/11】857. 雇佣 K 名工人的最低成本
    keil配置After Bulid Run #1 Run #2
  • 原文地址:https://blog.csdn.net/lm_is_dc/article/details/126190937