4

適切に保護された PHP Web ベースのツールを使用しmysqlcheckて一般的なデータベース テーブルの状態を確認したいのですが、パスワードがプロセス リストに表示されるのは望ましくありません。私はこのようなものを実行したいと思います:

$output = shell_exec('mysqlcheck -Ac -uroot -pxxxxx -hhostname');

// strip lines that's OK
echo '<pre>'.preg_replace('/^.+\\sOK$\\n?/m', '', $output).'</pre>'; 

残念ながら、 ではshell_exec()、コマンド ラインにパスワードを含める必要がありますが、パスワードがプロセス リスト ( ps -A | grep mysqlcheck) に表示されることが懸念されます。

テストマシンでmariadb 5.5を使用すると、mysqlcheckはプロセスリストにパスワードを表示しませんが、本番マシンはmariadbを実行しておらず、別のOSを実行しているため、安全側にいてこれらを実行したくありません生産側でのテスト。

mysql のすべてのバージョンでも、プロセス リストにパスワードが表示されませんか? 私の懸念は問題ではありませんか?

4

2 に答える 2