mysql数据开启远程登录,修改端口,开放防火墙端口
開啟遠程登錄:
方法I
登錄mysql(我是用遠程控制Linux服務器,相當于在服務器本機登錄mysql了),然后輸入:
mysql>grant all privileges on *.* to admin@localhost identified by 'something';添加一個用戶admin并授權通過本地機(localhost)訪問,密碼"something"。
mysql>grant all privileges on *.* to admin@"%" identified by 'something';添加一個用戶admin并授權可從任何其它主機發起的訪問(通配符%)。使用這一條語句即可。
方法II
mysql>insert into user values('%','admin',password('something'), 'y','y','y','y','y','y','y','y','y','y','y','y','y','y');
with grant option表示新增的該賬號是否有grant權限,即是否可以通過其創建新賬號。
非常不建議給用戶開放全部權限,最好給新用戶僅開放所需要的相關權限。一般給開發人員SELECT,UPDATE,DELETE,INSERT,CREATE,EXECUTE權限并且只在某些網段內訪問
FLUSH ?PRIVILEGES;刷新權限?
修改端口:
修改/etc/my.cnf
添加port=3308
修改后如下
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
port=3308
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
然后重啟mysql
如果你開啟了selinux,mysql會無法啟動,你會在日志中看到以下錯誤
[ERROR] Can't start server: Bind on TCP/IP port: Permission denied
[ERROR] Do you already have another mysqld server running on port: 3308
那么,你需要關掉selinux,不想重啟服務器,而關掉selinux,使用以下命令
/usr/sbin/setenforce 0
修改linux下mysql端口時候報錯:
Can't start server: Bind on TCP/IP port: Permission denied
需要修改: vi /etc/selinux/config
SELINUX=disabled
然后重啟服務器即可
開放防火墻端口:
#/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
#/etc/rc.d/init.d/iptables save 保存:
# service iptables restart 重啟生效
當然除了開放3306端口外,還有一個方法就是關閉防火墻,命令為:
# service iptables stop
不過,不推薦這種做法,因為這會引起安全性問題。
轉載于:https://www.cnblogs.com/sishishinn/p/6369581.html
總結
以上是生活随笔為你收集整理的mysql数据开启远程登录,修改端口,开放防火墙端口的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决 Ubuntu Software (
- 下一篇: 跨服务器连接数据库