112 件中 11 - 20 件を表示
« 前の 10 件 | 次の 10 件 »
Displaying posts with tag: 8.0 (reset)
Foeign Key制約によって暗黙に作成されたINDEX or NOT

TL;DR

(num, val) を持ったテーブルが2つ、numはどちらでもPKE、valはt1でだけUNIQUE KEY。

mysql80 46> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
       Table: t1
Create Table: CREATE TABLE `t1` (
  `num` bigint unsigned NOT NULL AUTO_INCREMENT,
  `val` varchar(32) DEFAULT NULL,
  UNIQUE KEY `num` (`num`),
  UNIQUE KEY `val` (`val`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 …
[さらに読む]
テンポラリーテーブルがストレージを埋め尽くした時のエラー番号の違い on MySQL 8.0.32

TL;DR

  • TempTableストレージエンジンがDisk落ちした時とInnoDB Temporary tableで「同じストレージあふれ」でも微妙にエラー内容が違う

    • 前者は ERROR 14 (HY000): Can't change size of file (OS errno 28 - No space left on device) , エラーログ出力なし

    • 後者は ERROR 1114 (HY000): The table '#sqlXXXXX' is full でエラーログ出力もあり

    • ちなみにMyISAMは ERROR 126 (HY000): Incorrect key file for table '/mytmp/#sqlXXXXX.MYI'; try to repair it 、これ少なくとも5.7からは変わってない

実験用に100MBくらいのファイルにxfsを作ってマウントする。


$ dd …
[さらに読む]
ERROR 3546 (HY000): @@GLOBAL.GTID_PURGED cannot be changed には実は2種類ある

TL;DR

  • SET GLOBAL gtid_purged = '+?' のプラス付きの記法は、既存の gtid_executed と1つたりともカブってはいけない。
    • RESET MASTER ができず、既存の gtid_executed に足したい場合は差分を取って + 記号で足してやらないといけない
  • gtid_executed が空でない時に + 記号なしの SET GLOBAL gtid_purged = ? した時のエラーが5.7と8.0で変わってた

SET GLOBAL gtid_purged = ? した時に出ることがある ERROR 3546 (HY000): @@GLOBAL.GTID_PURGED cannot be changed, よく見たら実は3種類くらいあるっぽかった。

perror で調べてみると、確かに ERROR 3546 (HY000): @@GLOBAL.GTID_PURGED cannot be …

[さらに読む]
MySQLは実はWindowsのdatadirをそのままLinuxに持って行っても動く(8.0では一ひねり必要)

タイトルがすべて。

MySQL 5.7.39をWindowsでinitializeして起動。

PS > bin\mysqld --initialize-insecure
mysqld: Could not create or access the registry key needed for the MySQL application
to log to the Windows EventLog. Run the application with sufficient
privileges once to create the key, add the key manually, or turn off
logging for that application.

PS > bin\mysqld --console
mysqld: Could not create or access the registry key needed for the MySQL application
to log to the Windows EventLog. Run the application with sufficient
privileges once to create the key, add the key manually, or turn off
logging for that application.
2022-10-10T05:54:48.343808Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2022-10-10T05:54:48.343866Z 0 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data …
[さらに読む]
MySQL 8.0.30でもrpl_semi_sync_master_enabledとrpl_semi_sync_source_enabledは同じものではない

TL;DR

  • rpl_semi_sync_master_enabledsemisync_master.so 由来で rpl_semi_sync_source_eanbledsemisync_source.so 由来
    • 他のMaster/Source系と違って、MySQLサーバーの中で丸められているわけではなく、 INSTALL PLUGIN した時にどちらを入れたかに依存する

rpl_semi_sync_master_enabledrpl_semi_sync_source_eanbled (enabledに限らず、 rpl_semi_sync_*

[さらに読む]
MySQL on Windowsで8.0.20とそれ以降のmysqld.exeが--skip-grant-tablesでクラッシュすることがある

TL;DR

  • パラメーターの組み合わせを間違えた場合、本来Abortして起動しないもの(ここまでは意図的)がAbortの処理に失敗してクラッシュする
  • skip-grant-tablesしたい時はmy.iniに一緒にshared-memoryを書いてね!

MySQL 8.0では skip-grant-tables

[さらに読む]
replica_parallel_workers > 1 && replica_preserve_commit_order=ON && slave_parallel_type = LOGICAL_CLOCK && FLUSH PRIVILEGES + アカウント権限周りのステートメントをほぼ同時に打つとMySQLがデッドロックすることがある

TL;DR

再現方法。

8.0.19でレプリケーション設定をしたMySQLを用意する(8.0.28では再現しなかった。5.7.39でも今のところ再現していない)


$ make_replication_sandbox --how_many_slaves=1 8.0.19

$ cd sandboxes/rsandbox_8_0_19/

$ vim master/my.sandbox.cnf

..

binlog_group_commit_sync_delay = 1000000  ### binlogのgroup_commitを起こしやすくするため

$ vim node1/my.sandbox.cnf

..

slave_parallel_workers = 2

slave_preserve_commit_order = ON

slave_parallel_type = LOGICAL_CLOCK

$ ./restart_all

俺は未だにMySQL::Sandboxを使っているのだ、すまんな…。

2つのターミナルを用意して、↓の2ステートメントを1秒以内( …

[さらに読む]
LINE Developer Meetup #73 - MySQL とわたし

 LINE Developer Meetup #73 - MySQL - connpass に参加してきました。

私のトークの資料はこちらで、

公開されているアーカイブ動画はこちらです。

ハッシュタグもまとめてみました。
LINE Developer Meetup #73 - MySQL ハッシュタグ拾い - Togetter

ここから先はポエムです。

今回、 “日本MySQLユーザ会のyoku0825” として参加しました。
俺はここ一年くらいスランプで、なんか(俺っぽい内容で)アウトプットできてないなあと思っていたので、初心に帰って 日本MySQLユーザ会 の肩書を借りて登壇させてもらいました。

[さらに読む]
MySQLのシノニムではないけど同じような動きをする何か(と、SHOW SLAVE STATUSとSHOW REPLICA STATUSの地味な違い)

TL;DR

実装上はシノニムになっていないけれど、同じ(ような)動きをする何かたち。

その1 その2 扱い
MASTER, SLAVE系 SOURCE, REPLICA系 sql/sql_yacc.yyの中で丸められている
{SHOW|PURGE} BINARY LOGS {SHOW|PURGE} MASTER LOGS 同上
[さらに読む]
xtrabackup 8.0.29とINSTANT COLUMNと

 

TL;DR


 $ xtrabackup --version

2022-07-20T18:36:05.410933+09:00 0 [Note] [MY-011825] [Xtrabackup] recognized server arguments: --server-id=1 --log_bin=mysql-bin --log-bin-index=bin.index --innodb_buffer_pool_size=60G --innodb_file_per_table=1 --innodb_flush_method=O_DIRECT

xtrabackup version 8.0.29-22 based on MySQL server 8.0.29 Linux (x86_64) (revision id: c31e7ddcce3)

INSTANT COLUMNが無ければ、Vanilla MySQL …

[さらに読む]
112 件中 11 - 20 件を表示
« 前の 10 件 | 次の 10 件 »