我尝试使用ssh隧道连接远程服务器以访问数据库。
总结一下情况:
1-当我启动操作系统时,
Mysql服务正在启动。我可以访问本地数据库。
我也可以使用以下命令连接到远程服务器:
sudo service mysql stop
连接后,提示更改,我可以连接并浏览服务器上的数据库。
一切都很好!!
2-所以我想创建一个SSH隧道来从本地端口3306访问远程数据库
我正在执行以下步骤:
ssh -i /Path_To_Key -L 3306:127.0.0.1:3306 user@IP_Server -f -N
sudo service mysql start
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details."
当我尝试启动Mysql时,出现错误消息:
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
以下是命令的结果
systemctl status mysql.service
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
journalctl -xe
{{1}}
你明白这是什么问题吗?
答案 0 :(得分:0)
您是否在运行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数据库的位置。