![](/img/trans.png)
[英]Connection to a MySQL server through a SSH tunnel using Swift 4?
[英]MySQL connection through SSH Tunnel
我試圖通過ssh隧道在遠程服務器上進行連接,以便訪問數據庫。
總結情況:
1-當我啟動操作系統時,Mysql服務正在啟動。 我可以訪問本地數據庫。 我還可以使用以下命令連接到遠程服務器: ssh -i /Path_To_Key user@IP_Server
連接后,提示更改就可以連接並瀏覽服務器上的數據庫。 一切都很好!
2-因此,我想創建一個SSH隧道以從本地端口3306訪問遠程數據庫
我正在執行以下步驟:
sudo service mysql stop
ssh -i /Path_To_Key -L 3306:127.0.0.1:3306 user@IP_Server -f -N
sudo service mysql start
當我嘗試啟動Mysql時,出現錯誤消息:
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details."
這是命令的結果
systemctl狀態mysql.service
mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: activating (start-post) (Result: exit-code) since mer. 2018-04-25 21:50:15 CEST; 5s ago
Process: 3771 ExecStart=/usr/sbin/mysqld (code=exited, status=1/FAILURE)
Process: 3764 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 3771 (code=exited, status=1/FAILURE); : 3772 (mysql-systemd-s)
CGroup: /system.slice/mysql.service
control
3772 /bin/bash /usr/share/mysql/mysql-systemd-start post
3810 sleep 1
journalctl -xe
Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
avril 25 21:54:49 Aspire-A515 audit[4686]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/4686/status" pid=4686 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
avril 25 21:54:49 Aspire-A515 audit[4686]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=4686 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
avril 25 21:54:49 Aspire-A515 audit[4686]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/4686/status" pid=4686 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
avril 25 21:54:49 Aspire-A515 kernel: audit: type=1400 audit(1524686089.710:65): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/4686/status" pid=4686 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
avril 25 21:54:49 Aspire-A515 kernel: audit: type=1400 audit(1524686089.710:66): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=4686 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
avril 25 21:54:49 Aspire-A515 kernel: audit: type=1400 audit(1524686089.710:67): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/4686/status" pid=4686 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
你明白是什么問題嗎?
您是否正在運行MySQL的盒子上啟動SSH連接?
如果是,則您阻止了端口3306,因此MySQL無法啟動。
在這種情況下,您的SSH命令應使用-R而不是-L:
ssh -i /Path_To_Key -R 3306:127.0.0.1:3306 user@IP_Server -f -N
如果我的猜測不對,請說明您在哪個系統上執行命令以及從何處通過ssh隧道連接到MySQL數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.