3101 件中 271 - 280 件を表示
« 前の 10 件 | 次の 10 件 »
MySQLの正規表現がGrapheme Clusterに対応していた

「竈門禰󠄀豆子」を MySQL に保存できるとかできないとかいう話題を見て、そう言えば MySQL の Grapheme Cluster 対応ってどうなってるんだっけ…と思ってググってみたら、MySQL 8.0.28 のリリースノートにこんな文を見つけた。

International Components for Unicode version 67 introduced a new implementation for \X (match a grapheme cluster), which requires locale data not currently included with MySQL. This means that, when using the version of ICU bundled with MySQL, a query using \X raises the error ER_REGEXP_MISSING_RESOURCE; when using ICU supplied by the system, we report ER_WARN_REGEXP_USING_DEFAULT as a Note. (Bug #33290090)

これは MySQL 8.0.28 で Grapheme Cluster の正規表現の \X

[さらに読む]
MySQL Illegal mix of collations エラーが出る・出ないまとめ

Illegal mix of collations

Illegal mix of collations エラーは 異なる照合順序で結合や比較を行った場合に発生するエラーです。

mysql> SELECT CONCAT(_utf8mb4 'A' COLLATE utf8mb4_bin, _utf8mb4 'B' COLLATE utf8mb4_unicode_ci);
ERROR 1267 (HY000): Illegal mix of collations (utf8mb4_bin,EXPLICIT) and (utf8mb4_unicode_ci,EXPLICIT) for operation 'concat'

mysql> SELECT _utf8mb4 'A' COLLATE utf8mb4_bin = _utf8mb4 'B' COLLATE utf8mb4_unicode_ci;
ERROR 1267 (HY000): Illegal mix of collations (utf8mb4_bin,EXPLICIT) and (utf8mb4_unicode_ci,EXPLICIT) for operation '='

エラーが発生しない場合もある

照合順序が異なっていても、エラーにならないケースもあります。 latin1_swedish_ciutf8mb4_unicode_ci と異なる照合順序で比較していますが、エラーなく実行することが出来てます。

mysql> …
[さらに読む]
今日は、MySQLに式と関数の速度を測定できるものがあったの日。

目次

とある日

MySQLの …

[さらに読む]
MySQL 5.1からMySQL 5.7へのレプリケーションが [ERROR] Slave I/O for channel '': error reconnecting to master 'repluser@xxxx:3306' - retry-time: 60 retries: n, Error_code: 0 で止まった

TL;DR

  • そもそも5.1から5.7へのレプリケーションはサポートされていないのは知っている

  • レプリカが character_set_server = utf8mb4 で起動した後、 SET GLOBAL character_set_server = utf8 はしていたけど、mysqldを再起動しないとI/Oスレッドはutf8mb4でコネクションをネゴシエートしようとして、5.1側に「そんなcharsetは知らん」と言われていたようだ。レプリカのmysqldを再起動して解決。

MySQL 5.1からMySQL 5.7にお引越ししようと、5.7のインスタンスを作って5.1をソースにした CHANGE MASTER TO してから START SLAVE した。


2022-01-20T17:47:46.873075+09:00 19926 [Note] 'CHANGE MASTER TO FOR CHANNEL '' executed'. Previous state master_host='', master_port= 3306, …
[さらに読む]
今日は、GPGキーを更新してMySQL8.0.28をインストールするの日。

目次

[さらに読む]
MySQL 8.0.26とそれ以降のmysqldumpで--master-dataや--dump-slaveでバックアップを取るとリストアしようとした時にエラる

TL;DR

  • 慌てず騒がず、エディタでダンプを開いて次の行を消してください

    • WARNING: --master-data is deprecated and will be removed in a future version. Use --source-data instead.
    • または WARNING: --dump-slave is deprecated and will be removed in a future version. Use --dump-replica instead.
  • Affects Meすると早く修正されると思います

Command-line options for mysqldump that contain the terms “master”, “slave”, or “mts”.

[さらに読む]
今日は、MySQLのクエリプロファイリングについて調べてみたの日。

目次

[さらに読む]
レプリケーションのセットアップ(非GTID)

レプリケーションのセットアップ(非GTID)

以下の手順で行う

  1. ソース(マスター)側の設定

    • server_idの設定
    • log_bin(バイナリログ)の有効化
    • レプリカ(スレーブ)接続用ユーザ作成
  2. レプリカ(スレーブ)へデータコピー

    • ソースでダンプ取得
    • ソースからレプリカへファイルコピー
    • レプリカにインポート
  3. レプリカ(スレーブ)側の設定

    • server_idの設定
[さらに読む]
オプティマイザトレースの使い方

オプティマイザトレースの使い方

オプティマイザトレースの使い方は以下の通り

  1. オプティマイザトレースを有効にする
  2. 解析したいクエリの実行
  3. トレースの表示

1. オプティマイザトレースを有効にする

mysql> SET optimizer_trace='enabled=on';

ちなみにSET GLOBALにするとそのセッションでは無効なので注意。

2. 解析したいクエリの実行

mysql> SELECT ... FROM xxx WHERE ..... ; …
[さらに読む]
今日は、MySQLでストアドファンクションであったエラーについての日。

目次

[さらに読む]
3101 件中 271 - 280 件を表示
« 前の 10 件 | 次の 10 件 »