Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Conexão Laravel MySql DB com SSH


Aqui está uma solução viável de trabalhar com um banco de dados hospedado em uma instância do EC2 via SSH com uma chave.

Primeiro, configure uma conexão correspondente na configuração do banco de dados:
'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'    => '',
    ),

Em segundo lugar, estabeleça um túnel:
ssh -i ~/dev/awskey.pem -N -L 13306:127.0.0.1:3306 [email protected]

(passamos a chave SSH para o parâmetro i e estabelecemos uma conexão SSH, vinculando-se à porta 13306)

Terceiro, use o banco de dados como você normalmente faria em um aplicativo Laravel:
$users = DB::connection('mysql_EC2')
        ->table('users')
        ->get();

var_dump($users);