如何將密碼傳遞給mysql命令行
$cat foo.php | grep '$dbpwd=' | cut -d '"' -f 2 | mysql -U root -p mydb -h friendserver
Enter password: (holds)
$echo P455w0rd | mysql -u root -p mydb -h friendserver
Enter password: (holds)
這兩個選項仍然要求輸入密碼,從stdin發送密碼的正確方法是什麼?
最安全的方法是創建一個新的配置文件,並使用–defaults-file =或–defaults-extra-file =命令行選項將其傳遞給mysql.
兩者之間的區別在於除了默認配置文件之外還讀取後者,而使用前者,只使用作爲參數傳遞的一個文件.
您的其他配置文件應包含類似於:
[client]
user=foo
password=P@55w0rd
確保您保護此文件.
然後運行:
mysql --defaults-extra-file=<path to the new config file> [all my other options]