Mysql
 sql >> Database >  >> RDS >> Mysql

Connessione Laravel MySql DB con SSH

Ecco una soluzione praticabile per lavorare con un database ospitato su un'istanza EC2 tramite SSH con una chiave.

Innanzitutto, imposta una connessione corrispondente nella configurazione del tuo database:

'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'    => '',
    ),

In secondo luogo, stabilisci un tunnel:

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

(passiamo la chiave SSH al parametro i e stabiliamo una connessione SSH, collegando alla porta 13306)

Terzo, usa il DB come faresti normalmente in un'app Laravel:

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

var_dump($users);