2016-05-31 74 views
0

我想establish_connection到另一臺機器上的數據庫:ROR無法遠程連接到MySQL數據庫

require 'mysql2' 
require "active_record" 

使用ActiveRecord

ActiveRecord::Base.establish_connection(
:adapter=> 'mysql2', 
:database=> 'development_db', 
:host=> "192.168.1.135", 
:port=> "3306", 
:username=> 'username', 
:password=>'password' 
) 

得到以下錯誤: 無法連接到MySQL服務器'192.168.1.135'(111)(Mysql2 :: Error)

+0

是否將mysql服務器配置爲允許遠程連接? –

+0

您是否有權連接到您嘗試訪問的IP地址。 – Sivan

+0

權限,沒有如何給予權限? – Amit

回答

0

經過太多艱苦的工作,我發現以下配置丟失以連接遠程數據庫。

  1. 添加下列行mysqld中部分

    綁定地址到my.cnf文件= 0.0.0.0

  2. 重啓MySQL服務

  3. 運行下面的命令(創建新的用戶名和密碼)

    GRANT ALL ON database_name。* TO [email protected]'202.54.10.20'IDENTIFIED BY'PASSWORD';

    FLUSH PRIVILEGES;