İşletim sistemi içinde herhangi bir yerde bulunan bir dosyayı kullanmak için --defaults-extra-file
örneğin:
mysqldump --defaults-extra-file=/path/.sqlpwd [database] > [desiredoutput].sql
Not: .sqlpwd
sadece örnek bir dosya adıdır. İstediğiniz her şeyi kullanabilirsiniz.
Not: MySQL otomatik olarak ~/.my.cnf
hangisinin kullanılabileceğini kontrol eder--defaults-extra-file
Benim gibi CRON kullanıyorsanız bunu deneyin!
mysqldump --defaults-extra-file=/path/.sqlpwd [database] > "$(date '+%F').sql"
Gerekli İzin ve Tavsiye Edilen Mülkiyet
sudo chmod 600 /path/.sqlpwd && sudo chown $USER:nogroup /path/.sqlpwd
.sqlpwd
içeriği:
[mysqldump]
user=username
password=password
Aktarılacak diğer örnekler .cnf
veya.sqlpwd
[mysql]
user=username
password=password
[mysqldiff]
user=username
password=password
[client]
user=username
password=password
Bir veritabanında otomatik olarak oturum açmak isterseniz, [mysql]
örneğin bu girişe ihtiyacınız olacaktır .
Artık sizi otomatik olarak DB'ye bağlayan bir takma ad yapabilirsiniz
alias whateveryouwant="mysql --defaults-extra-file=/path/.sqlpwd [database]"
Ayrıca, parolayı yalnızca içine koyabilir .sqlpwd
ve kullanıcı adını script / cli aracılığıyla iletebilirsiniz. Bunun güvenliği geliştirip iyileştirmeyeceğinden emin değilim, bu hep birlikte farklı bir soru olurdu.
Tamlık uğruna aşağıdakileri yapabileceğinizi söyleyeceğim, ancak son derece güvensizdir ve asla bir üretim ortamında kullanılmamalıdır:
mysqldump -u [user_name] -p[password] [database] > [desiredoutput].sql
Not: -p ve parola arasında boşluk yoktur.
Örneğin -pPassWord
doğru -p Password
, yanlışken.