Điểm:0

mysqldump - tên người dùng cũng có "-p"

lá cờ in

Tôi sử dụng tập lệnh sau để đọc thông tin xác thực cơ sở dữ liệu từ bản cài đặt Wordpress:

DB_NAME=$(sed -n "s/define( *'DB_NAME', *'\([^']*\)'.*/\1/p" wp-config.php)
DB_USER=$(sed -n "s/define( *'DB_USER', *'\([^']*\)'.*/\1/p" wp-config.php)
DB_PASSWORD=$(sed -n "s/define( *'DB_PASSWORD', *'\([^']*\)'.*/\1/p" wp-config.php)
DB_HOST=$(sed -n "s/define( *'DB_HOST', *'\([^']*\)'.*/\1/p" wp-config.php)

Khi tôi lặp lại các biến như thế này:

tiếng vang $DB_NAME;
tiếng vang $DB_USER;
tiếng vang $DB_PASSWORD;
tiếng vang $DB_HOST;

Mọi thứ đều ổn. Khi tôi sử dụng chúng trong một mysqldump bản tường trình:

mysqldump --add-drop-table -u${DB_USERNAME} -p${DB_PASSWORD} ${DB_NAME} > ../backups/${SQL_BACKUP} 2>&1

hoặc

mysqldump --add-drop-table -u$DB_USERNAME -p$DB_PASSWORD $DB_NAME > ../backups/$SQL_BACKUP 2>&1

tôi nhận được thông báo lỗi này:

mysqldump: Gặp lỗi: 1045: Truy cập bị từ chối đối với người dùng '-8zSkcRrgVad3F'@'localhost' (sử dụng mật khẩu: KHÔNG) khi cố gắng kết nối

Khi tôi sử dụng câu lệnh như thế này:

mysqldump --add-drop-table -udatabaseuser -p8zSkcRrgVad3F cơ sở dữ liệu > ../backups/test.sql 2>&1

Mọi thứ đều hoạt động tốt. Tôi không có ký tự đặc biệt nào trong người dùng/cơ sở dữ liệu/mật khẩu của mình, nhưng lệnh lấy -p8zSkcRrgVad3F như tên người dùng là tốt? Tôi có cần cắt bớt các giá trị trước đó hoặc đại loại như thế này không?

Điểm:1
lá cờ cn

Có vẻ như tên người dùng trống, vì vậy lệnh thực tế trông giống như

mysqldump --add-drop-table -u -p8zSkcRrgVad3F ...

(8zSkcRrgVad3F là mật khẩu của bạn)

Đầu tiên, hãy thêm khoảng cách giữa các cờ và các biến, và thứ hai - tôi nghĩ lỗi chỉ là do bạn sử dụng sai tên biến. Bạn đề cập đến thử nghiệm tiếng vang $DB_USER cái nào hoạt động, nhưng bạn sử dụng $DB_USERNAME trong lệnh.

lá cờ in
Cảm ơn. Vậy đó :( Tôi đã bị mù. Tuy nhiên, có một câu hỏi. Sự khác biệt giữa $VAR và ${VAR} là gì?

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.