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.