この記事はMySQL Casual Advent Calendar 2018 10日目の記事です。
皆さんMySQLの学習はどのようにされていますか?
MySQLを含めたデータベースが落ちることはそのままサービスの停止につながることが多く、安定運用にはそれなりの知識と経験が必要だと思います。
データを管理しているという特性上、設定や運用方法に欠陥があると一時的にサービスが止まるだけではなく、取り返しのつかない障害になってしまう可能性もあります。 …
この記事はMySQL Casual Advent Calendar 2018 10日目の記事です。
皆さんMySQLの学習はどのようにされていますか?
MySQLを含めたデータベースが落ちることはそのままサービスの停止につながることが多く、安定運用にはそれなりの知識と経験が必要だと思います。
データを管理しているという特性上、設定や運用方法に欠陥があると一時的にサービスが止まるだけではなく、取り返しのつかない障害になってしまう可能性もあります。 …
このエントリーは
に対する考察(?)エントリーです。 というわけでまずは まみー さんの↑のエントリーを読まれてからこのエントリーを読んでいただけると幸いです! …
[さらに読む]TL;DR
latin1_swedish_ci から
utf8mb4_0900_ai_ci になった
latin1 をそのまま使っているとは思えないけれど、
utf8mb4 だけで見てもデフォルトは utf8mb4_general_ci
から utf8mb4_0900_ai_ci に変更になっている
まずは等価比較。
それぞれ10億回繰り返しているので、1回当たりの時間はナノ秒単位になる。
あと、データは保管せずただ比較しているだけなので、単純にCPU勝負のワークロードになる。
mysql80 8> SELECT BENCHMARK(1000000000, '1' = '1' COLLATE utf8mb4_0900_ai_ci) AS utf8mb4_0900_ai_ci; -- …[さらに読む]
[勝手に対応]MySQL8.0の分析関数の2(Lag関数と累計と移動累計)
本エントリはMySQL Casual Advent Calendar 2018の11日目です。
MySQLでは8.0からウインドウ関数に対応しました。これにより商用RDBMS御三家+PostgreSQLが対応していた
多くの分析関数・ウインドウ関数が利用できるようになりました。
本エントリは以下のエントリの続きです。
[勝手に対応]MySQL8.0の分析関数の1(モードとメジアン)
1. 部分的に不一致なキーの検索
PostgreSQL …
このエントリーはMySQL Casual Advent Calendar 2018の7日目です。
自分は筆が遅く、11月から準備しようしよう、と思ってたにも関わらず、結局、直前になって書いてます。。。
さて、MySQL 8.0になって、performance_schemaが15個増えてました。
5.7では、87個。
mysql> select count(*) from information_schema.TABLES where TABLE_SCHEMA = 'performance_schema';
+----------+
| count(*) |
+----------+
| 87 |
+----------+
1 row in set (0.02 sec)
8.0では102個。
mysql> select count(*) from information_schema.TABLES where TABLE_SCHEMA = 'performance_schema';
+----------+
| count(*) |
+----------+
| 102 | …[さらに読む]
RDBMS-GISアドヴェントカレンダー 7日目です。
本エントリのタイトルの正式名は「INFORMATION_SCHEMA.ST_SPATIAL_REFERENCE_SYSTEMS ビューに見る様々な地球」です。長いので省略しました。
MySQLは 8.0 になって初めて「地球が丸い」という事を知りました。これはMySQL的にはどういうことかというと、内部に、地球の形(回転楕円体)のデータを持っているということです。
そもそも地球の形って?
…
[さらに読む]
このエントリーはMySQL Casual Advent Calendar 2018の7日目です。
自分は筆が遅く、11月から準備しようしよう、と思ってたにも関わらず、結局、直前になって書いてます。。。
さて、MySQL 8.0になって、performance_schemaが15個増えてました。
5.7では、87個。
mysql> select count(*) from information_schema.TABLES where TABLE_SCHEMA = 'performance_schema';
+----------+
| count(*) |
+----------+
| 87 |
+----------+
1 row in set (0.02 sec)
8.0では102個。
mysql> select count(*) from information_schema.TABLES where TABLE_SCHEMA = 'performance_schema';
+----------+
| count(*) |
+----------+
| 102 |
+----------+
1 row in set (0.04 sec)
…
[さらに読む]