使用 SSH 的 Laravel MySql 数据库连接

2024-02-04

我有几个想要访问的远程数据库,但它们位于只能通过 SSH 使用密钥访问的服务器上。

In Sequel Pro, I connect to this remote DB something like this: enter image description here

我将如何配置我的 Laravel 应用程序以连接到这样的数据库?

'mysql_EC2' => array(
        'driver'    => 'mysql',
        'host'      => '54.111.222.333',
        'database' => 'remote_db',
        'username' => 'ubuntu',
        'password' => 'xxxxxxxxxxxxxxxxxxxx',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
    ),

这是一个可行的解决方案,通过带有密钥的 SSH 来使用 EC2 实例上托管的数据库。

首先,在数据库配置中设置相应的连接:

'mysql_EC2' => array(
        'driver'    => 'mysql',
        'host'      => '127.0.0.1:13306',
        'database' => 'EC2_website',
        'username' => 'root',
        'password' => 'xxxxxxxxxxxxxxxx',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
    ),

二、建立隧道:

ssh -i ~/dev/awskey.pem -N -L 13306:127.0.0.1:3306 [email protected] /cdn-cgi/l/email-protection

(我们将SSH密钥传入i参数并建立SSH连接,绑定到端口13306)

第三,像平常在 Laravel 应用程序中一样使用数据库:

$users = DB::connection('mysql_EC2')
        ->table('users')
        ->get();

var_dump($users);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 SSH 的 Laravel MySql 数据库连接 的相关文章

随机推荐

  • 从 R 中的 Excel 文件中提取超链接

    如何在 Excel 中获取包含超链接文本的单元格并提取超链接部分 我发现了一种超级复杂的方法来提取超链接 library XML rename file to zip my zip file lt sub xlsx zip my excel
  • Django Rest框架中的HTTP 403

    所以我有一个基于函数的视图 与 Django Rest 框架一起使用 如下所示 from rest framework permissions import IsAuthenticated from rest framework decor
  • Vim、NERDtree 在会话恢复中未恢复

    当我有一个 NERDtree 面板并保存一个 Vim 会话 mksession 文件名 然后打开该会话 vim S 文件名 时 该面板会打开并标记为 NERDtree 但不会填充 如果我从命令行尝试 NERDtree 窗口确实会填充 但现在
  • 如何在 group_concat() 中使用 sum()?

    问题已修改 真的想要一个 group concat 的总和 表 商店 shop id name state 0 shop 0 5 1 shop 1 5 2 shop 2 5 3 shop 3 2 表 项目 shop item quantit
  • 在 C# 中打印 excel(使用 Spreadsheetgear 生成)

    在 C 中 我正在生成特定格式的 Excel 我必须在 click print 上打印相同的 Excel 格式 P s Microsoft Office 不可用 请使用 SpreadSheetGear 来实现此目的 如果您有 UI 并且正在
  • MySQL 表的交错行

    我有一个包含数据和类的表 例如 DATA Class 1 A 2 A 5 B 10 A 2 A 45 B 90 B 我想将这两个类交错以获得如下内容 DATA Class 1 A 5 B 2 A 45 B 2 A
  • Symfony2 Forms - 如何在表单构建器中使用参数化构造函数

    我正在学习使用 Symfony2 在我读过的文档中 与 Symfony 表单一起使用的所有实体都有空的构造函数 或者根本没有 例子 http symfony com doc current book index html http symf
  • 扩展方法什么时候会中断?

    我们目前正在讨论 NET 中的扩展方法是否不好 或者在什么情况下扩展方法可能会引入难以发现的错误或以任何其他方式出现意外行为 我们想出了 为不受您控制的类型编写扩展方法 例如 使用 GetTotalSize 扩展 DirectoryInfo
  • Comparer 类的用途是什么?

    其目的是什么Comparer
  • Dart 包 - 如何隐藏公共类中的内部方法?

    我正在开发一个关于 Flutter 的包 我在类中有一些方法仅对包本身有用 对导入我的包的程序员没有用 是否可以在公共类中隐藏这些方法以进一步实现 我正在尝试使用 internal注释 但我仍然可以看到标记为包外部内部的方法 Example
  • Java 中的枚举是否允许有 setter?

    我有一个enum它有一个参数 字段 是String 我可以在这个领域拥有二传手吗 public enum Blah Monday a Tuesday b private final String letter Blah String let
  • 对 csv 文件进行排序

    我有一个 csv 文件 需要对其进行排序 该文件如下所示 ID Name Surname Age Salary 1 John Asben 33 1000 2 Adam Smith 22 1200 3 Amanda J 22 2000 4 G
  • 扩展程序和小书签的内容安全策略

    Github有以下内容内容安全政策 https w3c github io webappsec specs content security policy 内容安全策略 默认 src 脚本 src asset cdn github com
  • 无法在 Yosemite DP 7 上安装 Cocoapods

    我在安装在单独分区上的 Yosemite DP 7 上安装 Cocoapods 时遇到问题 我已经尝试按照上找到的说明进行操作Cocoapods 与 Xcode 6 和 10 10 Yosemite https stackoverflow
  • 使用 JavaScript 获取 div id

    这是一些 HTML div class results div something div div something else div div blah blah blah div div etc div div 现在如果我可以使用 jQ
  • 从多个 hdf5 组创建数据集

    从多个 hdf5 组创建数据集 团体代码 np array hdf get all my groups 然后我添加了用于从组创建数据集的代码 with h5py File train h5 w as hdf hdf create datas
  • SQLite 内存数据库的优点[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我今天从一本关于 SQLite 的书中读到了关键字 memory 但它只说了它是什么 如何使用 而且解释太短了 所以我在这里搜索了更多
  • React js 日期选择器的多个实例

    如果我使用日期选择器的多个实例 我在更新反应日期选择器上的日期时遇到问题 日期选择器组件
  • 在Python中快速找到给定大小的所有连通子图的方法?

    注 快速解决方案在answer https stackoverflow com a 75751315 12842085然而 需要进一步改进速度 给定一个无向稀疏连接图G with n顶点 我正在寻找一种快速的方法来找到所有连接的子图G wi
  • 使用 SSH 的 Laravel MySql 数据库连接

    我有几个想要访问的远程数据库 但它们位于只能通过 SSH 使用密钥访问的服务器上 In Sequel Pro I connect to this remote DB something like this 我将如何配置我的 Laravel