ファイル内のコマンドを使用してmysqlまたは他のシェルのような環境に入ります


1

にパスワードが保存されているとします/root/mysql-password。そのファイルからパスワードを手動でコピーしてに入力せずにMySQLに接続する方法はありますmysql -u root -p{passowrd}か?

たとえば、次のようなものです:

mysql -u root -p | {command} /root/mysql-password

回答:


1

最も簡単な方法は、次の形式で/root/.my.cnfファイルを作成することです(忘れずにchmod 0600)。

[client]
user=root
password=rootpass

何かをしていて、ファイルをに持てない場合/root/.my.cnf、次のように作成してfilename.cnf、MySQLを起動できるはずです--defaults-file

mysql --defaults-file=/root/squirrellyfiles/filename.cnf

答えてくれてありがとう。これが唯一の方法ですか?そして、そのようなことをする一般的な「Linuxの方法」はありませんか?
RuslanN

申し訳ありませんが、あなたが何を求めているのか正確に理解できません。Linuxでは、通常、フラットな構成ファイル(例:.my.cnf)に資格情報、ハッシュまたは暗号化されたファイル、環境変数、sshキーを通じて、またはパスワードプロンプトがあります。コマンドに直接パスワードを渡すことは非常に安全ではありません。defaults-fileまたは.my.cnfが機能しない場所で何かをしていますか?
ブライアン

私のパスワードはファイル内にあると私は、MySQLに接続したい時はいつでも私が持っていたのは「猫のファイル/ /パスワードを使用して、」と「のmysql -uユーザーは-ppassword」私はそれを手動で対処一部を自動化することが可能であると思わそれをコピー
RuslanN

0

これは特定の問題を解決する好ましい方法ではないかもしれませんが、いわゆる「Linuxの方法」はバックティックを使用することです。

mysql -u root -p `cat /root/mysql-password`
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.