zoukankan      html  css  js  c++  java
  • Linux之搭建远程数据库MySQL[Ubuntu:全过程]

    1.mariadb在Linux中首次进入mysql

        (因为此时还没有创建任何用户,mysql的root并不等效于linux中的root用户)
    

    sudo apt-get install mysql-server

    sudo mysql # 或者 mysql -uroot -p

        # 创建新用户
        use mysql
         create user arg-userName@'%';#任何主机访问均可数据库
         set password for arg-userName@'%' = password('arg-userPassword');
        GRANT ALL PRIVILEGES ON arg-databaseName.* TO arg-userName;
        FLUSH PRIVILEGES;# 更新mysql数据库系统的用户权限列表
    
        #使用新用户进入数据库
         mysql -u userName -p
        
        #关于不熟悉或者不明白数据库管理方面的常用命令见我的另一篇博文:http://www.cnblogs.com/johnnyzen/p/7922780.html 
    

    2.开启远程连接【此处的配置,根据数据库版本和型号的不同,均不一致,但原理一致,就是:关闭数据库的连接权限(而不限于本机)】

    sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
    注释掉bind-address = 127.0.0.1
    sudo service mysql restart

    3.开启指定用户远程登录权限

    mysql> select host,user from mysql.user;
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'userName'@'%' IDENTIFIED BY 'password';
    mysql> FLUSH PRIVILEGES;
    

    4.检查是否开启3306防火墙端口,如果没有,则开启

    • 本机开启对应端口
    sudo apt-get install ufw # 安装UFW
    sudo ufw allow 80/tcp
    sudp ufw allow 8080/tcp
    sudo ufw allow 20/tcp
    sudo ufw allow 22/tcp
    sudo ufw allow 3306/tcp
    sudo ufw enable # 启用ufw防火墙
    
    • [云主机(VPS/ECS)] 登录云主机,确保端口安全策略开启了数据库对应的端口

    参考博文

    4.重启mysql服务

    sudo service mysql restart
    

    5.远程连接

    navicat连接 或 命令行连接

    [命令行]
    mysql -u<userName> -h<hostName> -p<password>
    

    参考文献

  • 相关阅读:
    ssh.sh_for_ubuntu1604
    ssh.sh_for_ubuntu1404
    ssh.sh_for_ubuntu1204
    ssh.sh_for_centos
    raw,cow,qcow,qcow2镜像的比较
    Oz 创建Windows2008R2镜像
    Oz 创建Ubuntu镜像
    Oz 创建Debian8镜像
    Oz 创建CentOS7镜像
    Oz 创建CentOS6镜像
  • 原文地址:https://www.cnblogs.com/johnnyzen/p/7928593.html
Copyright © 2011-2022 走看看