MySQL
テストデータ作りたいな 自分で手で作るのもめんどいし、定義変わるとアレ(メンテが必要)やしな。 せや、型から適当にデータ作るツールとかないんかな? あったわ→mysql_random_data_load さすぺる!(さすがPercona!) 試してみよう use test; -- 適当な…
名言生まれる! タイトルにもある大主キーという単語がtwitterのTLに一瞬溢れました。 後日もことあるごとに大主キーという人が続出。 もうこれは今年の流行語対象 (in MySQL)といっても過言ではありません。 MySQL Casual Talksとは? もっと深く浅く、広く…
これもあんまりまとめる感じでは無いですが、とりあえず後から追記できる程度には雑記します。 iddlewares Deep Talks(AWS Loft Tokyo) Amazonさんがありがたいことにミドルウェア関連の話≒DB系の話やってくれたんで、目黒のビルに行ってきた。 ぼくらが8.…
※勢いで書いて、まとめようとしてなかったので読みにくいと思います。(伝えたいことはタイトルの一行) 今年は参加できたOracle Code。 https://www.oracle.co.jp/events/code/2019/ 毎年この時期なんやかんやあったんだけど、今年は時間取れたし、聞きたい話…
リリースノートを読んでみる 英語の勉強もかねてちょっとずつ読んでみる。 Account Management Notes DROP ROLE権限について > Previously, users who had the DROP ROLE privilege could use the DROP ROLE statement to drop locked or unlocked accounts.…
とうとう来ました、待望のバージョンが! 僕はdocker-composeで遊んでるのでYAMLに mysql_8.0: image: mysql:8.0.16 と書いて再起動しただけでできましたが、中の人が つ https://t.co/YFNApjZZUk— (@RKajiyama) April 25, 2019 と教えてくれたリンク先にも…
MySQLの数値型 整数型 (真数値)だと - INTEGER - INT - SMALLINT - TINYINT - MEDIUMINT - BIGINT 固定小数点型 (真数値)だと - DECIMAL - NUMERIC 浮動小数点型 (概数値) - FLOAT - DOUBLE ビット値型 - BIT という風になっています。 社内のDBでdecimal(31…
https://qiita.com/tfukumori/items/959ed9c751734b73675fで上がってた話をMySQLで一応調査してみた。 やったこと https://qiita.com/tfukumori/items/959ed9c751734b73675f であがってた文字コード「U+4EE4」と「U+F9A8」、あと「U+32FF」はいずれもMySQLに…
インデックス再構築ってレプリケーションされる? 結論としては されます! いやぁ、正直不安だったんですよね。 定義が変わるわけじゃないし、データが飛ぶわけじゃない。 でも、奥野さんのこの記事にもある通り、ALTER TABLEではテーブルコピーしてるわけ…
環境構築時にハマったお話 先日、AデータベースサーバからBデータベースサーバにデータをmysqldump→mysqlコマンドでエクスポート&リストアしました。 ところが Aから取得した "aスキーマ" の一部のオブジェクトがBに正しくリストアされてないことがわかり、…
ある日のこと 社内のHさんから質問が。 外注さんが、文字列である建物名の完全一致検索するときのSQLで `... where building like ? ...` って書いてきたので 「 `=` じゃないのは何故?」って聞いたら↓を意図したと回答がありました。 https://dev.mysq…
曖昧に理解してるかもと思い、自分の振り返りのために書いてます。 先日書いた記事で作ったデータで説明します。 MySQLのロック 通常、DML実行時に取得されるロックは排他ロックと共有ロックで構成されます。 最初にトランザクションでロックをかけたほうが…
タイトルの元ネタは61巻『そいつの名はディアボロ』より Window関数がMySQL8で使えるようになりました! ワーイ♪☆彡(ノ゚▽゚)ノ☆彡ヘ(゚▽゚ヘ)☆彡(ノ゚▽゚)ノ☆彡ワーイ♪ Window関数って? 他のDBMSではおなじみ(でも、意外とWindow関数って名前は知らないで使ってるかも)の関数…
(会社で書いたやつの焼き直しだったりする) ワタクシ、とてもジョジョの奇妙な冒険が好きで、今日もジョジョリオン20巻買って会社でご飯食べながら読んでたんですが、 そのジョジョの主人公達を使って、MySQLでは8から入ったCTEを試してみました。 そいつの…
以下の話はRedash 6.0.0+b8537の話です。 新しくなったら変わっててほしいところです。 ユーザーごとの権限設定したい 先に言っておくと、 画面からすべてはできません 画面からできること ユーザーを作ること グループを作ること グループとユーザーを紐づ…
今回、AZをまたいだEC2(AWS Amazon Linux2)上にMySQL5.7(.25)をインストールし、Group Replicationを構成する手順を記載します。 MySQL Shellを使って設定するので、MySQL Shell用のインスタンスを一台用意します(※)。 ※本来は3台のDB上のどれかに入れてもい…
pt-index-usage Percona Toolkitのpt-index-usageはとても便利で、スロークエリログから実行されたクエリを読み取り、それらがインデックスをどのように使用しているかを分析するものだ。 https://www.percona.com/doc/percona-toolkit/LATEST/pt-index-usag…
土曜日に聞いてきたOSC2019SpringのMySQL話を議事録的にメモったんでアップしてみる。 色々不足もあるかもしれないですが・・・。 MySQL ~ yoku0825 と sakaik が語る最新情報と周辺情報~ MySQLについて雑談をする会 自己紹介 坂井さん(以降S) 各地のOSC…
基本的には公式の手順通り 作業概要 Percona XtraDB Cluster構築を行う。 構成は以下の通り EC2×4台 Percona-XtraDB-Cluster-57-5.7.24×3 ProxySQL×1(後日) Galera Arbitrator(さらに後日)→ProxySQLと同じサーバとする 事前作業 AWS/EC2インスタンスを3台(DB…
無料という言葉に弱い僕 最近、スマートスタイル社のセミナー何回か参加して、そこで知った「MySQLなんでも相談会」という無料コンサルティングに行ってみた。 www.s-style.co.jp このMySQLなんでも相談会ではスマートスタイル社の今までの経験を生かして、…
MySQL8.0.14でそれは起きた CREATE USER 'test1'@'%' IDENTIFIED BY "test1"; ってな感じでユーザ作成を行おうとすると、 Error Code: 3009. Column count of mysql.user is wrong. Expected 51, found 49. Created with MySQL 80011, now running 80014. Pl…
MySQL Tunerってなに? チューニングをアドバイスしてくれるツール チューニングに限らず、セキュリティ診断までしてくれる パラメータやバージョンでの問題点を洗い出してくれるツール Git Hubに上がってる(https://github.com/major/MySQLTuner-perl) Perl…
pt-archiverとは 大きなテーブルから他のテーブルあるいはファイルにレコードをアーカイブするのにツール where句が使え、抽出条件が設定できる 出力ファイル名にDBスキーマ名、テーブル名、年月日時分秒を入れられる 抽出対象データを自動的に削除する(デフ…
セミナー概要 2019-01-24(木)16:00 - 18:30 データベースのHAの話から、MySQL5.7から使用可能なマルチマスター型HAのMySQL InnoDB Clusterについての説明、および実運用での話をLOCONDO.jpの杉山さんから聞く。 資料については別途公開予定 イベント紹介 h…
log_slow_extraパラメータが8.0.14から追加された 何それ?おいしいの? スロークエリーログが有効で出力先が含まれているFILE場合、サーバーはスローファイルに関する情報を提供するログファイル行に追加のフィールドを書き込みます。セクション5.4.5「遅い…
MySQL8.0.14からGIS関数のST_Distanceが少し改良された ST_Distance(g1、g2 [、unit])関数に3番目のオプションのパラメータを追加されました。 公式では8.0.13のころから紹介されてたんですが、やっと試せます。 新しいパラメータは、結果に使用する[単位]…
MySQL InnoDB Clusterさわってみたい こないだセミナーも行ったし、DBプロキシについて調査しといて―という依頼もあったりしたんで、MySQL InnoDB Cluster環境を作ってみようと考えた。 MySQL InnoDB Clusterとは 普通にサーバ立てて、構築する場合はここ(Sm…
こんなテーブルがありました CREATE TABLE `hogehoge` ( `hoge_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'HOGEID', ・・・(略)・・・ `hoge_text` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'ほげほげ', PRIMARY KEY (`hoge_id`), …
この日記は RDBMS GIS アドベントカレンダー2018の13日目向けに書きました。 昨日のノリで軽い記事ですが… ST_CONTAINS テーブル内に存在するPOINT型の地点に対し、特定の緯度経度の地点が存在するか確認するなら SELECT COUNT(*) FROM テーブル名 WHERE ST_…
この記事はMySQL Casual Advent Calendar 2018 13日目の記事です。 テーブル作成時 カラムの型を定義しますが、数字列に対して hoge_id` bigint(20) hoge_flag` tinyint(1) というようにカッコ()の中に数字を入れていると思いますが、この数字がそもそも省略…