Saya mengalami kesulitan berjalan mysqldump
sebagai pengguna root mysql. Ketika saya mencoba untuk membuat cadangan mysql
tabel saya mendapatkan kesalahan ini:
mysqldump: Got error: 1142: SELECT,LOCK TABL command denied to user
'root'@'localhost' for table 'cond_instances' when using LOCK TABLES
Adakah yang pernah melihat itu sebelumnya? Saya telah melihat beberapa referensi untuk mysql saya dan mysqldump saya menjadi versi yang berbeda tetapi ketika saya menjalankannya mereka berada di direktori yang sama.
Saya menjalankan MySQL 5.5.8.
mysql
database-backup
bryan kennedy
sumber
sumber
mysqldump
dengan--skip-add-locks
?--single-transaction
dan semuanya berfungsi dengan benar.Jawaban:
Tambahkan --skip-add-locks ke perintah mysqldump Anda
sumber
--skip-add-locks tidak berfungsi:
Anda ingin --skip-lock-tables sebagai gantinya
sumber
(Saya menyadari ini terlambat 8 bulan)
Ini bukan masalah kunci, dan solusi yang ditawarkan hanya memotong masalah sebenarnya:
Sebuah 5,5 mysqldump aplikasi tidak harus mengekspor
performance_schema
database dalam tempat pertama.Berdasarkan pengalaman saya sebelumnya, saya menyarankan bahwa
mysqldump
program yang Anda gunakan adalah versi 5.1 . Bagaimana cara mengatakannya? Isu:Sebuah 5.1 klien tidak menyadari adanya "futuristik" dari
performance_schema
dan oleh karena itu upaya untuk membuangnya. Tidak menyadari bahwa seharusnya tidak.Coba dan temukan versi 5.5 , dan gunakan untuk membuang, tanpa menambahkan kunci yang disarankan, dan ini akan bekerja dengan baik.
sumber
Seperti yang disebutkan oleh Shlomi Noach, performance_schema tidak seharusnya didukung.
Cara mudah untuk memperbaikinya adalah dengan mengatur yang berikut ini di file konfigurasi Anda:
sumber