[解決済み] mysqldump がフルスキーマをダンプする際に必要な最小限の GRANT? (TRIGGERがありません!!)
2023-05-18 17:44:45
質問
私は、MySQL のユーザー ダンプ という名前の MySQL ユーザを、次のような権限で使用しています。
GRANT USAGE ON *.* TO 'dump'@'%' IDENTIFIED BY ...
GRANT SELECT, LOCK TABLES ON `mysql`.* TO 'dump'@'%'
GRANT SELECT, LOCK TABLES ON `myschema`.* TO 'dump'@'%'
すべてのデータ(トリガーとプロシージャを含む)をダンプするために ダンプ ユーザを使用します。私は以下の方法でmysqldumpを呼び出します。
mysqldump -u dump -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
ダンプされたファイルには トリガーがありません。 !!
トリガは、mysqldump で次のようにすると正しくダンプされます。 ルート MySQL ユーザで試します。
mysqldump -u root -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
ということは、パーマの問題でしょうか......どのような の余分な付与は何ですか? ダンプ MySQL ユーザーがフルダンプを正しく実行するために必要なものですか?
どのように解決するのですか?
完全なダンプというのは、例えば
VIEW
と
EVENT
が必要でしょう。
GRANT USAGE ON *.* TO 'dump'@'%' IDENTIFIED BY ...;
GRANT SELECT, LOCK TABLES ON `mysql`.* TO 'dump'@'%';
GRANT SELECT, LOCK TABLES, SHOW VIEW, EVENT, TRIGGER ON `myschema`.* TO 'dump'@'%';
で、もし
VIEW
で関数を実行する場合、残念ながら
EXECUTE
.
私自身の問題は、なぜ
SELECT
が必要なのでしょうか?
関連
-
MySQL XAが分散型トランザクションを実装する方法を1記事にまとめました。
-
[解決済み】マルチパート識別子をバインドできませんでした。
-
mysql5.7のインストールと、無料・長期利用を目的としたNavicateの導入プロセスについて
-
MySQLにおけるvarchar型とchar型の違い
-
Mysql がエラー 1241 を報告 オペランドは 1 つのカラムを含む必要があります。
-
Mysqlデータベースへのリンク時にpymysqlがConnection refusedエラーを報告する
-
群関数解の無効な使用
-
[解決済み] SQLを使用してSUMとSUBTRACTを行うには?
-
[解決済み] MySQLテーブルへの挿入または存在する場合の更新
-
[解決済み] ユーザーに初めて権限を与えると、なぜ "GRANT USAGE "が作成されるのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
MySQLデータベース・インデックスの左端一致の原則
-
MySqlの整数インデックスと文字列インデックスの失敗または暗黙の変換問題
-
mysqlにおけるvarcharの日付比較とソートの実装
-
MySQLインストールチュートリアル(Windows用)詳細
-
Mysqlのソート機能の詳細
-
[解決済み】文字列からuniqueidentifierに変換する際に変換に失敗する - 2つのGUIDの場合
-
MySQLの一般的な分割ライブラリおよび分割テーブルスキームの概要
-
Mysql がエラーを報告 オペランドには 1 つのカラムが含まれている必要があります。
-
[解決済み] SQLを使用してSUMとSUBTRACTを行うには?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法