NET_SSH を使用して SSH 接続を介して mysql データベースに接続しようとしています。読み取りと書き込みで対話型シェルを使用しています。
私のコードは次のようになります。
echo '<pre>';
$ssh -> setTimeout(10);
echo $ssh -> read('');
$ssh -> write('ls');
echo $ssh -> read('');
echo '<br />';
$string = 'mysql -u '. $database -> database_user . ' -h ' . $database -> datbase_host . ' --password=' . $database -> database_password . ' ' . $database -> database_name. '; show databases;';
$ssh -> write($string);
echo $ssh -> read('mysql>');
echo '<br />';
$this -> write('show databases;');
echo $ssh -> read('');
echo '<br />';
しかし、私の出力は次のようになります。
lsubuntu@ip-xxxxxx:~$ ls
Last login: Fri Dec 28 16:08:39 2012 from ool3.dyn.optonline.net
mysql -u db_user -h xxx.us-east-1.rds.amazonaws.com --password=abc123 my_database; show databases;ubuntu@ip-xxxxxx:~$ mysql -u db_user -h xxx.rds.amazonaws.com --password=abc123 my_database; show databases;
Last login: Fri Dec 28 16:08:49 2012 from ool3.dyn.optonline.net
show databases;ubuntu@ip-10-151-4-222:~$ show databases;
私の質問は、なぜ私が思っていたようにインタラクティブにならないのですか? 予想される結果は、mysql 接続または少なくとも mysql プロンプトであると言わざるを得ません。しかし、私はそれを理解しています。私は何か間違ったことをしていますか?