mysqldump:エラーが発生しました:1044:LOCK TABLESを使用している場合、ユーザー 'username' @ 'localhost'のデータベース 'databasename'へのアクセスが拒否されました


16

mysqldump:エラーが発生しました:1044:LOCK TABLESを使用している場合、ユーザー 'username' @ 'localhost'のデータベース 'databasename'へのアクセスが拒否されました

適切にログを記録でき、SQLyog Toolから完全バックアップを取得できますが、MySQL Enterprise Workbencgからバックアップを取得しようとするとエラーメッセージが表示されます。

mysqldump:エラーが発生しました:1044:LOCK TABLESを実行すると、ユーザー 'myuserid' @ '%'のデータベース 'mydatabasename'へのアクセスが拒否されました

操作は終了コード2で失敗しました

また、MySQL接続の状態は良好です。

mysql>ステータス。

mysql.exe Ver 14.14 Distrib 5.6.19、Win32(x86)用

接続ID:23921現在のデータベース:データベース名現在のユーザー:ユーザーIDはここでOKですSSL:使用されていません区切り文字の使用:; サーバーバージョン:5.6.17-log MySQL Community Server(GPL)プロトコルバージョン:10接続:接続はここでOKサーバーキャラクターセット:utf8 Dbキャラクターセット:utf8クライアントキャラクターセット:cp850接続キャラクターセット:cp850 TCPポート:3306稼働時間:21日21時間11分37秒

スレッド:24質問:20500671遅いクエリ:3212開く:121998テーブルをフラッシュする:1オープンテーブル:2000クエリ/秒平均:10.842

回答:


26

本当に遅いのはわかっていますが、同じ問題に直面したときにこの質問を見つけました。だから、誰かが必要な場合に備えて、私は2つの可能な解決策を見つけました:

  1. ユーザーがLOCK権限を失ったため、データベース管理者に権限を付与するよう依頼する必要があります
  2. フラグをmysqldump追加するだけで、同じコマンドを実行し--single-transactionます。mysqldump --single-transaction -u user -p ...

それはあなたのソリューションに役立ちます。
ハサン

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.