mysql開啓遠程訪問

不使用ssh鏈接mysql的方式:php

開啓mysql遠程訪問:mysql

  vi /etc/mysql/my.cnf sql

#skip-external-locking數據庫

#bind-address = 127.0.0.1centos

skip-name-resolve安全

在centos中my.cnf缺乏不少配置項,並無bind-address,則須要關閉防火牆/etc/rc.d/init.d/iptables stop服務器

CentOS下開啓mysql遠程鏈接,遠程管理數據庫ssh

當服務器沒有運行php、沒裝phpmyadmin的時候,遠程管理mysql就顯得有必要了。由於在CentOS下設置的,因此標題加上了CentOS,如下的命令在debian等系統下應該也OK。tcp

  1. mysql -u root -p mysql # 第1個mysql是執行命令,第2個mysql是系統數據名稱

在mysql控制檯執行:ide

  1. grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
  2. # root是用戶名,%表明任意主機,'123456'指定的登陸密碼(這個和本地的root密碼能夠設置不一樣的,互不影響)
  3. flush privileges; # 重載系統權限
  4. exit;

容許3306端口

  1. iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
  2. # 查看規則是否生效
  3. iptables -L -n # 或者: service iptables status
  4. # 此時生產環境是不安全的,遠程管理以後應該關閉端口,刪除以前添加的規則
  5. iptables -D INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

PS,上面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

遠程管理數據庫的軟件,win系統下可使用SQLyog,用了幾種遠程軟件,感受這個用起來蠻不錯的。

相關文章
相關標籤/搜索