Windows 上 SQLyog 連線 CentSO7 上 MySql 相關設定及常見問題
阿新 • • 發佈:2018-11-04
一、版本相關
1. CentOS7
# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (AltArch)
2. Mysql
# mysql -V
mysql Ver 14.14 Distrib 5.7.17, for Linux (i686) using EditLine wrapper
3. Windows10 安裝 SQLyog
二、mysql資料庫使用者設定
1. 檢查 user 表使用者資訊
1.1 登陸
[[email protected] ~]# mysql -uroot -p
Enter password:
1.2 檢查
mysql> select host, user, authentication_string from mysql.user; +-----------+-----------+-------------------------------------------+ | host | user | authentication_string | +-----------+-----------+-------------------------------------------+ | localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | +-----------+-----------+-------------------------------------------+ 2 rows in set (0.00 sec)
1.3 建立使用者 admin (也可以直接使用 root 使用者,需要更新 host=%)
mysql> create user 'admin' identified by '123456'; -- 使用者名稱:admin 密碼:123456
Query OK, 0 rows affected (0.09 sec)
1.4 將 mysql 所有許可權賦給 admin
mysql> grant all on *.* to 'admin'@'192.168.209.129' identified by '123456'; -- ip ‘192.168.209.129’ 獲取可以參考 1.6 Query OK, 0 rows affected, 1 warning (0.02 sec)
1.5 使操作生效
mysql> flush privileges;
Query OK, 0 rows affected (0.15 sec)
1.6 再次查詢
mysql> select host, user, authentication_string from user;
+-----------------+-----------+-------------------------------------------+
| host | user | authentication_string |
+-----------------+-----------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| 192.168.209.129 | admin | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| % | admin | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-----------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
2. 在windows上使用 sqlyog 連線 mysql,如果成功則最好,如果報下面的錯誤,則說明防火牆沒有對 3306 埠對外訪問開許可權
三、使用 firewalld 開啟埠對外訪問許可權
1. 啟動 firewalld
systemctl start firewalld
2. 開啟 3306 訪問許可權
firewall-cmd --zone=public --add-port=3306/tcp --permanent #permanent永久生效,沒有此引數重啟後失效
firewall-cmd --reload #使配置生效
3. 再次使用 SQLyog 連線 Mysql
四、firewalld 基本操作命令
1. firewalld的基本使用
systemctl start firewalld #啟動
systemctl stop firewalld #關閉
systemctl status firewalld #檢視狀態
systemctl disable firewalld #開機禁用
systemctl enable firewalld #開機啟用
systemctl mask firewalld #鎖定服務
systemctl unmask firewalld #取消鎖定服務
2. systemctl是CentOS7的服務管理工具中主要的工具,它融合之前service和chkconfig的功能於一體。
systemctl start firewalld.service #啟動一個服務
systemctl stop firewalld.service #關閉一個服務
systemctl restart firewalld.service #重啟一個服務
systemctl status firewalld.service #顯示一個服務的狀態
systemctl enable firewalld.service #在開機時啟用一個服務
systemctl disable firewalld.service #在開機時禁用一個服務
systemctl is-enabled firewalld.service #檢視服務是否開機啟動
systemctl list-unit-files|grep enabled #檢視已啟動的服務列表
systemctl --failed #檢視啟動失敗的服務列表
3. 配置firewalld-cmd
firewall-cmd --version #檢視版本
firewall-cmd --help #檢視幫助
firewall-cmd --state #顯示狀態
firewall-cmd --zone=public --list-ports #檢視所有開啟的埠
firewall-cmd --reload #更新防火牆規則
firewall-cmd --get-active-zones #檢視區域資訊
firewall-cmd --get-zone-of-interface=eth0 #檢視指定介面所屬區域
firewall-cmd --panic-on #拒絕所有包
firewall-cmd --panic-off #取消拒絕狀態
firewall-cmd --query-panic #檢視是否拒絕
4. 那怎麼開啟一個埠呢?
firewall-cmd --zone=public --add-port=3306/tcp --permanent #配置一個埠,permanent永久生效,沒有此引數重啟後失效
firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent #配置區間設定埠
firewall-cmd --reload #重新載入,是配置生效
firewall-cmd --zone= public --query-port=3306/tcp #檢視
firewall-cmd --zone= public --remove-port=3306/tcp --permanent #刪除埠
5. 當然你可以還原傳統的管理方式
#執行一下命令:
systemctl stop firewalld #停止firewalld
systemctl mask firewalld #鎖定firewalld
#並且安裝iptables-services:
yum install iptables-services
systemctl enable iptables #設定開機啟動
systemctl disable iptables #設定禁用啟動
systemctl stop iptables
systemctl start iptables
systemctl restart iptables
systemctl reload iptables
service iptables save #儲存設定
#開放某個埠 在vi /etc/sysconfig/iptables裡新增
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
6. 再次使用 SQLyog 連線 Mysql