php - 如何在 Laravel 中使用远程数据库

标签 php mysql laravel

我正在尝试将一个应用程序 Laravel 上传到一个 FTP 服务器,该应用程序已经可以工作但是数据库没有,是数据库挂载在另一台服务器上,我使用 ping 并正常工作,希望你的帮助,提前致谢。

这是我的文件配置:

    'mysql' => array(
        'driver'    => 'mysql',
        'host'      => '198.168.169.151',
        'port' => '2222',
        'database'  => 'Radec_Apps',
        'username'  => 'radec_user',
        'password'  => 'Mkn!',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
    ),

我需要配置其他东西吗?

最佳答案

授予访问权限

从远程主机授予用户访问权限非常简单,只需几个步骤即可完成。首先,您需要以 root 用户身份登录到您的 MySQL 服务器。您可以通过键入以下命令来执行此操作:

mysql -u root -p

这将提示您输入 MySQL root 密码。

一旦您登录到 MySQL,您需要发出 GRANT 命令来为您的远程用户启用访问权限。在此示例中,我们将创建一个全新的用户 (fooUser),该用户将具有对 fooDatabase 数据库的完全访问权限。

请记住,此声明并不完整,需要更改一些项目。请将1.2.3.4改为我们上面获取的IP地址。您还需要将 my_password 更改为您希望用于 fooUser 的密码。

mysql> GRANT ALL ON fooDatabase.* TO fooUser@'1.2.3.4' IDENTIFIED BY 'my_password';

当新创建的用户 fooUser 从 IP 地址 1.2.3.4 连接时,此语句将授予密码为“my_password”的所有权限。

远程测试

现在您可以远程测试您的连接。您可以从另一台 Linux 服务器访问您的 MySQL 服务器:

mysql -u fooUser -p -h 44.55.66.77

输入密码: 欢迎使用 MySQL 监视器。命令以 ; 结尾或\g。 您的 MySQL 连接 ID 是 17 服务器版本:5.0.45 源码分发

键入“帮助;”或 '\h' 寻求帮助。键入“\c”以清除缓冲区。

mysql> _

注意本例中我们MySQL服务器的IP为44.55.66.77。

@ref: http://www.rackspace.com/knowledge_center/article/mysql-connect-to-your-database-remotely

您可能需要更改 my.cnf 以更改 BIND ip 地址。

关于php - 如何在 Laravel 中使用远程数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27111800/

相关文章:

javascript - 如何使用 PHP 从 html 下拉列表中选择选项值中的第三个元素

php - 尝试从旨在提交多条记录的表单中插入 user_id 和数组时收到错误

php - laravel 中错误的时间戳

php - Laravel 5.2 通过 API 进行身份验证

php - 将旧表结构迁移到新发现的枚举不起作用

php - 隐藏数据库在 phpMyAdmin 中创建两个本地主机服务器

mysql - 将 AESCipher 对象存储在 mySQL 中

node.js - Angular 2、Laravel 5.2 和 ioredis 实时应用程序

php - 如何在没有Flash的情况下从网站上录制用户的声音?

php - 联系表格的错误信息