zoukankan      html  css  js  c++  java
  • How to Enable Remote Access to MySQL

    How to Enable Remote Access to MySQL on Ubuntu | Chosen Blog


    How to Enable Remote Access to MySQL

    MySQL remote access is disabled by default, but with a few simple steps, you should be up and running with remote MySQL in just a few minutes. This is especially useful when working with multiple developers in an Agile project environment, so that you all use the same data set, and can focus on just writing the application.

     
    Login to SSH to edit remote MySQL config

    First, we need to edit the mysql config file to accept and bind remote connections to your server. We do this by editing your my.conf file located on most unix systems at /etc/my.conf or /etc/mysql/my.conf. I’m going to hope and assume you know the basics to ssh into your remote server and vi or nano the conf file.

    ssh root@yourserver.com
    vi /etc/my.conf

    Replace mysqld Defaults

    You can either set this up as a new connection or override the default, in this case, I replaced the default connection with my own remote connection settings:

    [mysqld]
    bind-address    = 255.112.324.12
    port            = 3306
    user            = mysql
    pid-file        = /var/run/mysqld/mysqld.pid
    socket          = /var/run/mysqld/mysqld.sock
    basedir         = /usr
    datadir         = /var/lib/mysql
    tmpdir          = /tmp
    language        = /usr/share/mysql/English
    # skip-networking
    # skip-external-locking

    After your done editing, just save and close the file and restart mysql services:

    # Ubuntu
    service mysql restart
    # Other Unix
    /sbin/init.d/mysql restart
    # Test that your connection is allowed with telnet on your local machine:
    telnet 255.112.324.12 3306

    Granting Remote Access to MySQL Users

    Now we’ve created our remote config for MySQL, we have to grant access to this server to other machines.

    mysql -uroot -pMyPass
    CREATE DATABASE mydb;
    # Grant permission to root from any host:
    GRANT ALL ON mydb.* TO root@'%' IDENTIFIED BY 'MyPASSWORD';

    Open Up MySQL Remote Ports

    Now that our user has been granted access from any host, all thats left is to make sure our OS will allow connections to the default MySQL port

    /sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT

    And now we should be able to login to our server from our local machine:

    mysql -h255.112.324.12 -uroot -pMyPASSWORD

    Does this work for you? Comments or suggestions?

  • 相关阅读:
    Redis 实现队列优先级
    Redis 实现安全队列
    快速理解linux流编辑器sed命令
    Varnish 简介
    手机访问本地服务器
    javascript类的类比详解-大白话版
    优秀前端工程师应该掌握的内容(转自:github)
    mongodb初步使用
    Markdown 语法速查表
    pace.js和NProgress.js两个加载进度插件的一点小总结
  • 原文地址:https://www.cnblogs.com/lexus/p/2508259.html
Copyright © 2011-2022 走看看