Melaksanakan Perintah MySQL daripada Skrip Shell
Melaksanakan arahan MySQL daripada skrip shell boleh menjadi penting untuk mengautomasikan tugas pangkalan data. Dengan memasukkan arahan MySQL ke dalam skrip, anda boleh mengautomasikan tugasan berulang atau melaksanakan operasi kompleks tanpa campur tangan manual.
Pernyataan Masalah
Seorang pengguna ingin melaksanakan arahan MySQL berikut daripada skrip shell:
mysql -h "server-name" -u root "password" "database-name" < "filename.sql"
Arahan ini memulihkan data daripada fail SQL, tetapi pengguna menghadapi ralat semasa cuba melaksanakannya daripada skrip shell.
Penyelesaian
Ralat timbul apabila memberikan kata laluan dalam skrip shell. Untuk menentukan kata laluan dalam skrip shell, gunakan bendera -p tanpa ruang antara bendera dan kata laluan, seperti yang ditunjukkan di bawah:
mysql -h "server-name" -u root "-pXXXXXXXX" "database-name" < "filename.sql"
Menggunakan Fail Konfigurasi untuk Bukti Kelayakan
Pendekatan alternatif ialah menyimpan bukti kelayakan pengguna dalam fail ~/.my.cnf. Ini mengelakkan keperluan untuk menentukan kata laluan pada baris arahan. Fail konfigurasi harus mempunyai kandungan berikut:
[client] user = root password = XXXXXXXX
Dengan fail konfigurasi tersedia, arahan MySQL boleh dilaksanakan seperti berikut:
mysql -h "server-name" "database-name" < "filename.sql"
Petua Penyelesaian Masalah
Jika arahan MySQL gagal dilaksanakan daripada skrip shell, pertimbangkan penyelesaian masalah berikut petua:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Perintah MySQL dengan Selamat menggunakan Kata Laluan daripada Skrip Shell?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!