Mysqldump ile ilgili hataları nasıl yok sayabilirim?


12

Bir veritabanını boşaltırken,

mysqldump: Couldn't execute 'show create table `some_table`': execute command denied to user 'some_user'@'%' for routine 'some_routime' (1370)

sonra boşaltma durur.

Bu tür sorunlarla karşılaştığında mysqldump'ı nasıl devam ettirebilirim? 10 dakika Google hiçbir yardım sunmadı.

İşte kullandığım komut:

mysqldump -u username -h localhost --port=4406 -p --databases database_name --skip-lock-tables --force > database_name.sql

Yanıtlar:


27

adam mysqldump

-f, --force         Continue even if we get an sql-error.

Tamam, bunun başarısız olduğunu düşündüm, ama görünüşe göre işe yaradı. Döküm bitmiş gibi görünüyor, ancak hatalar sonuna kadar meydana geldi, bu yüzden dökümü başarısız hale getiren hatalara benziyordu.
Chad Johnson

Bize gösterdiği komutta --force seçeneğini zaten sağladı.
Zoredache

1
üzgünüm farkında değildim.
chocripple

1
@Chad Johnson, bir kişi --force kullanmadan temiz bir yedek alamazsanız, yedeklemenizin başarısız olduğunu iddia edebilir. Zorlama seçeneği önemli olabilecek hataları bastıracaktır. Lütfen --force'u bağımlı olacağınız bir yedekleme komut dosyasında kullanmayın.
Zoredache

Bu sadece yerel olarak çalışmak için bir veritabanı dökümü alabilirsiniz. Önemli bir şey değil.
Chad Johnson

1

AFIAK, yapamazsın. Çalıştırmak için yeterli ayrıcalığa ihtiyacınız var mysqldump. executeÇalışan kullanıcıya neden ayrıcalık vermediniz ?


2
Çünkü şirketim beni başka bir bölümden geçmeye zorluyor :(
Chad Johnson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.