CentOS下开启mysql远程连接

    服务器 泡泡 886次浏览 已收录 0个评论

    mysql为了安全,默认不开启远程连接,有时候需要远程管理,因此需要开启mysql远程连接
    1.允许3306端口

    iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
    
    # 查看规则是否生效
    iptables -L -n # 或者: service iptables status
    
    # 此时生产环境是不安全的,远程管理之后应该关闭端口,删除之前添加的规则
    iptables -D INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
    

    上面iptables添加/删除规则都是临时的,如果需要重启后也生效,需要保存修改:

    service iptables save # 或者: /etc/init.d/iptables save
    

    还可以vi /etc/sysconfig/iptables # 加入下面这行规则也是可以的

    -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
    

    2.mysql允许远程

    vi etc/my.cnf
    

    注释掉skip-networking或者bind 127.0.0.1

    3.数据库允许远程
    登录mysql

    mysql -u root -p mysql
    

    输入密码进入

    2.在mysql控制台执行

    grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
    # root是用户名,%代表任意主机,'123456'指定的登录密码(这个和本地的root密码可以设置不同的,互不影响)
    flush privileges; # 重载系统权限
    exit;
    

    注意:如果修改Host字段出错,那就直接进数据库mysql修改为%

    远程管理数据库的软件,win系统下可以使用SQLyog


    喜欢 (0)
    发表我的评论
    取消评论
    表情 贴图 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址