MySQLの8.0クエリー・リライトのサポートDML

MySQLの8.0クエリー・リライトのサポートSELECT INSERT UPDETE文の書き換えをREPLACE DELETE


この特徴点があり、そのようなオンラインの開発など、賞賛 SQL オンラインに直接、フィールドインデックスを追加することを忘れクエリCPU 果たしたが、この時間は、あなたができるSQL - 書き換えビジネス最初のエラーので、すぐに、データベースを殺す、としません。添加が完了した後にロールバックの開発、および他のオンラインインデックスを知らせます。


プラグインをインストールします。

mysqlの-S /tmp/mysql_hcy.sock -p123456 <./ install_rewriter.sql



発効するかどうかを確認してください

SHOW GLOBAL変数は「rewriter_enabled」のような。


書き込み書き換えルール

query_rewrite.rewrite_rules(パターン、置換、挿入  
(pattern_database)値
"sbtest1限界SELECT * FROM?"、
"SELECT K、Cをsbtest1限界から?"、
"試験")。

意味:

次の文

sbtest1制限からSELECT *;?

以下のように書き換えます:

sbtest1限界からK、Cを選択します?。

注:疑問符変数


有効にするルールの実装

CALLのquery_rewrite.flush_rewrite_rules()。


ショー

MySQLの> sbtest1リミット1 \ GからSELECT *; 
*************************** 1行******************** ******* 
K:499284 
C:83868641912-28773972837-60736120486-75162659906-27563526494-20381887404-41576422241-93426793964-56405065102-33518432330 
1行セットで、1つの警告(0.00秒)
 
ERROR:  
いいえクエリ指定
 
のMySQL>ショー警告\ G 
*************************** 1行***************** ********** 
  レベル:注
   コード:1105 
に書き換え「sbtest1リミット1からSELECT *」クエリ「SELECT K、sbtest1リミット1からC」プラグインクエリー・リライトによって:メッセージ・
セット内の1行(0.00秒)



おすすめ

転載: blog.51cto.com/hcymysql/2457485