Mysql komut satırı istemcisini kullanıyorum ve istemciyi her başlattığımda parolayı sağlamak istemiyorum. Seçeneklerim neler?
Mysql komut satırı istemcisini kullanıyorum ve istemciyi her başlattığımda parolayı sağlamak istemiyorum. Seçeneklerim neler?
Yanıtlar:
.my.cnf
Ana dizininizde buna benzeyen bir dosya oluşturun . Dosya sistemi izinlerinin yalnızca sahip olan kullanıcının okuyabileceği şekilde ayarlandığından emin olun (0600).
[client]
host = localhost
user = username.
password = thepassword
socket = /var/run/mysqld/mysqld.sock
#database = mysql
Sorunuzu mysqldump olarak da etiketlediğiniz için bu soruya bakmalısınız.
Kök şifresi olmadan cron işinde mysqldump kullanma
Güncelleme (2016-06-29) mysql 5.6.6 veya üstünü çalıştırıyorsanız, kimlik bilgilerini şifrelenmiş bir dosyada saklamanızı sağlayan mysql_config_editor aracına bakmalısınız . Giovanni'ye bundan bahsettiği için teşekkürler .
mysql_config_editor
Yardımcı programı, kimlik doğrulama bilgilerini adlı şifreli bir giriş yolu dosyasında saklamak için kullanabilirsiniz .mylogin.cnf
.
Yeni bir kimlik bilgileri kümesi oluşturmak için:
mysql_config_editor set --host=db.host.org --user=dbuser --password
ve istendiğinde şifrenizi girin.
Bu, kimlik doğrulama bilgilerinizi varsayılan client
giriş yolunda saklar .
Farklı bir --login-path
seçenek belirterek birden fazla kimlik doğrulama bilgisini saklayabilirsiniz :
mysql_config_editor set --login-path=db2 --host=db2.host.org --user=dbuser --password
Varsayılan olarak, mysql
istemci diğer seçenek dosyalarından [client]
ve [mysql]
gruplarını okur , böylece giriş yolu dosyasından da okur. Bir --login-path
seçenekle, istemci programları ayrıca oturum açma yolu dosyasından adlandırılmış oturum açma yolunu okur. Diğer seçenek dosyalarından okunan seçenek grupları aynı kalır. Bu komutu düşünün:
mysql --login-path=db2
mysql
İstemci okur [client]
ve [mysql]
diğer seçenek dosyalarından ve [client]
, [mysql]
ve [mypath]
giriş yolu dosyasından.
Yapılandırma dosyasında saklanan tüm bilgileri yazdırmak için:
mysql_config_editor print --all=true
Yardımcı program hakkında daha fazla bilgiyi "mysql_config_editor - MySQL Yapılandırma Yardımcı Programı" nda bulabilirsiniz .
.Mylogin.cnf dosyasının güvenli olduğunu iddia etmemeliyiz , çünkü my_print_defaults -s [use your login-path]
bu şifreyi düz metin olarak göstermek için kullanabilirim. Bu nedenle MariaDB bu “belirsiz güvenlik” yaklaşımını desteklememektedir.
Yukarıda belirtilen yöntemlere dik başka bir yol daha vardır, ancak başka bir kişi monitörünüzü izliyorsa VEYA geçmişinizi kaydediyorsanız bir güvenlik riski olabilir .
Bununla birlikte, size sorulmasını önleyecek bir seçenek ve atmak-off docker görüntüleri ve benzeri kullandığım bir seçenek ....
mysql -u YOUR_USER --password=YOUR_PASSWORD_HERE your_database -e "your query" etc.
Sizden istenmez, isterseniz kabukta geçici bir diğer ad ayarlayabilirsiniz.
Dikkatle kullanın.
mysql Ver 14.14 Readline 5.1 kullanarak debian-linux-gnu (x86_64) için 5.5.61-38.13 dağıtın