並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 1234件

新着順 人気順

mysqlの検索結果121 - 160 件 / 1234件

  • 5,500超のMySQLインスタンスを少人数で運用するには - LINEのDB運用効率化・自動化の取り組み - エンジニアHub|Webエンジニアのキャリアを考える!

    5,500超のMySQLインスタンスを少人数で運用するには - LINEのDB運用効率化・自動化の取り組み 大きなサービスであれば、それを支えるデータベースの規模もまた大きくなるでしょう。LINE社のデータベースの規模は、2021年11月時点でMySQLのインスタンス数5,500超。巨大なデータベースの運用を効率化、自動化するための工夫やノウハウをLINE社のDBAに聞きました。 日本国内だけで、8900万人以上という膨大なMAUを抱えるコミュニケーションアプリ「LINE」をはじめ、多くの大規模サービスを運営するLINE株式会社(以下、LINE)が取り扱うデータ量は膨大です。使用するデータベースの規模は、なんと、2021年11月時点でMySQLのインスタンス数5,500超。これほど多くのインスタンスを管理しているにも関わらず、同社でMySQLの運用に携わるDBA(Database Admi

      5,500超のMySQLインスタンスを少人数で運用するには - LINEのDB運用効率化・自動化の取り組み - エンジニアHub|Webエンジニアのキャリアを考える!
    • MySQLのcollationの動作を体系的に理解する - shallowな暮らし

      はじめに collationとは二つの文字の間の順序を定義するものです。こう言われるととても単純に聞こえるのですが、MySQLのcollationの詳細な動作は実は結構複雑です。 この記事はcollationの挙動に関する体系的な解説と様々な具体例を元にcollationに対する理解を深め、collationの問題のトラブルシューティングの筋道を立てる事を目的としています。なお、この記事は大まかなcollationの動作の説明を目的としており、全てを網羅しているわけではありません。詳細な動作はMySQLの公式ドキュメントの方が丁寧ですので実際のトラブルシューティングではドキュメントもご活用ください。 なお、この記事での検証はMySQL8.0.31を利用しています。 collationの基礎 collationは冒頭で説明したように二つの文字の順序関係や同値関係を決めるものです。collat

        MySQLのcollationの動作を体系的に理解する - shallowな暮らし
      • Amazon RDS ブルー/グリーンデプロイを利用してMySQLのアップグレードをした話 - Pepabo Tech Portal

        こんにちは。技術部プラットフォームグループのharukinです。 この記事では、私たちが提供するネットショップ作成・運用のためのECプラットフォーム「カラーミーショップ」のデータベースを、Amazon RDSのブルー/グリーンデプロイを利用し、MySQLのバージョン5.7.38から8.0.35へアップグレードした経験についてご紹介します。カラーミーショップにおいてはこれが初の試みでした。Amazon RDS固有のファーストタッチレイテンシーの解除方法や、ダウンタイム時間の計測についてもお伝えします。 Amazon RDSのブルー/グリーンデプロイを活用するメリットは、本番環境に準ずるステージング環境を構築し事前検証が可能であることです。ステージング環境は約1分で本番環境に昇格させることができ、昇格時に許容ダウンタイムを超えたり、レプリケーションやインスタンスの問題が生じた場合は、自動的にプ

          Amazon RDS ブルー/グリーンデプロイを利用してMySQLのアップグレードをした話 - Pepabo Tech Portal
        • 「MySQL 8.0 の薄い本」を作って配っている話 - Qiita

          タイトルの通り、「MySQL 8.0 の薄い本」(薄くない)を以下のリポジトリで配布しています。 https://github.com/hmatsu47/mysql80_no_usui_hon 出掛けた先のイベント・勉強会などでも物理本を配布しています。 2019/08/08 追記:MySQL 8.0.17 対応版をリリースしました。 2019/10/27 追記:MySQL 8.0.18 対応版をリリースしました。 2019/12/20 追記:MySQL 8.0.18 対応版第 2 刷をリリースしました。 2020/01/04 追記:MySQL 8.0.18 対応版第 3 刷をリリースしました。 2020/01/19 追記:MySQL 8.0.19 対応版をリリースしました。 2020/03/22 追記:MySQL 8.0.19 対応版第 2 刷をリリースしました。 2020/05/15

            「MySQL 8.0 の薄い本」を作って配っている話 - Qiita
          • MySQLで全文検索機能を使う際のパフォーマンスについて調査してみた - iimon tech blog

            こんにちは、CTOの森です。iimonは今回が初のアドベントカレンダー参加です! 本記事はiimonアドベントカレンダー1日目の記事となります。 はじめに 検証した環境 MySQL/mecabのインストール 大量のデータを入れる 1レコードのINSERTにかかった時間 検索してみる 検索文字列が「出来事」の場合 インデックスなし N-gram(bi-gram) IN NATURAL LANGUAGE MODE IN BOOLEAN MODE MeCab IN NATURAL LANGUAGE MODE IN BOOLEAN MODE 検索文字列が「チューリングはロンドンのリッチモンドに住み」の場合 まとめ 参照したサイト 最後に はじめに 今回はMySQLで全文検索機能を使う際のパフォーマンスについて書こうと思います! 全文検索をちゃんと使うのであればElasticsearchやSolrな

              MySQLで全文検索機能を使う際のパフォーマンスについて調査してみた - iimon tech blog
            • Amazon Aurora MySQL 3 with MySQL 8.0 compatibility is now generally available | Amazon Web Services

              AWS Database Blog Amazon Aurora MySQL 3 with MySQL 8.0 compatibility is now generally available Amazon Aurora is a MySQL and PostgreSQL-compatible relational database built for the cloud. Aurora combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open-source databases. Amazon Aurora MySQL is compatible with MySQL 5.6 and MySQL

                Amazon Aurora MySQL 3 with MySQL 8.0 compatibility is now generally available | Amazon Web Services
              • Blue/Green デプロイを使用した、RDS MySQL/PostgreSQLのアップグレード

                TL;DR RDS の メジャーバージョンアップグレード を行なった PostgreSQL 11.6 -> 15.5 MySQL 5.7.44 -> 8.0.36 PostgreSQL は AWS CDK を利用した、自前での手動切り替えをベースにした Blue/Green デプロイによるアップグレードを行なった MySQL は AWS コンソールから AWSが提供している機能である RDS Blue/Green Deployments による MySQL のアップグレードを行なった nginx の ngx_http_proxy_module を活用してサービスのダウンタイムを防止した はじめに 初めまして。株式会社ジーニーの GENIEE CHAT開発チームのマネージャーを担当しています。 今回は、データベースのメジャーアップグレードを行った際の手順やポイントなどを書いていこうと思います

                  Blue/Green デプロイを使用した、RDS MySQL/PostgreSQLのアップグレード
                • MySQL 101 for Developers

                  背景などは https://wrsn0.hatenablog.com/entry/2024/02/22/092703 へ

                    MySQL 101 for Developers
                  • MySQLの新サービス「HeatWave」、SQLそのままで最大3000倍高速に。DMM.comが検証[PR]

                    DMM.comは、動画配信やオンラインゲーム、オンライン英会話から株式や外国為替の取引まで、さまざまなサービスを20以上のグループ会社で提供しています。 同社のデータ基盤のデータベースにはMySQLが採用され、運用されてきました。 そのデータベースをMySQL 8.0へ移行するにあたり、移行先の候補とされたのがOracle Cloud上のマネージドサービスとして提供されているMySQLの新サービス「MySQL Database Service with HeatWave」(以下、HeatWave)です。 DMM.comは同社の実際のデータとSQLを使ってHeatWaveを評価。結果として最大で3000倍もの性能向上が得られたとする発表を、2021年5月に行われたウェビナー「DMM.comにおけるMySQL活用術とHeatWave検証結果解説」で行いました。 またオラクルはHeatWaveの

                      MySQLの新サービス「HeatWave」、SQLそのままで最大3000倍高速に。DMM.comが検証[PR]
                    • 良い加減Goでmysqlに接続するときにDSNを直書きするのはやめない?

                      よく見るDB接続例 Go言語を用いてmysqlに接続する際、DBの情報を文字列で直書きしているケースを良くみる import ( "database/sql" _ "github.com/go-sql-driver/mysql" ) func main(){ db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/db?charset=utf8&parseTime=true") // 以下省略 } import ( "database/sql" "time" "github.com/go-sql-driver/mysql" ) func connectDB() *sql.DB { jst, err := time.LoadLocation("Asia/Tokyo") if err != nil { // エラーハンドリ

                        良い加減Goでmysqlに接続するときにDSNを直書きするのはやめない?
                      • MySQL徹底入門 第4版 MySQL 8.0対応 | SEshop.com

                        MySQL 8.0対応! 日本MySQLユーザ会メンバーによる全面改定版! 【本書の概要】 2011年刊行の『MySQL 徹底入門 第3版』の改訂版です。 メジャーバージョンアップした8.0に対応。 旧版の内容を全面的に見直して書下ろし。 改訂にあたり、新機能についてはデータベース担当者が必要となる部分を中心にピックアップ! 運用・データ型・レプリケーション・文字コードなどの実務で役立つ内容もバランスよく解説します。 【MySQL 8.0について】 MySQLは、バージョン5.7から一気に進んで8.0になりました。 旧バージョンとの互換性は担保しつつも、 大幅なりリファクタリングが行われており、 今後のMySQLの起点となるバージョンとして期待されています。 MySQLにとって重要な機能は多数ありますが、第4版では次の機能などの解説を行っています。 ・グループレプリケーション機能 ・デフォ

                          MySQL徹底入門 第4版 MySQL 8.0対応 | SEshop.com
                        • インタビュー:MySQLエキスパートのyoku0825さんに聞いてみた - Cybozu Inside Out | サイボウズエンジニアのブログ

                          こんにちは。コネクト支援チームの風穴(かざあな)です。 この度サイボウズでは、GMOメディア株式会社とコンサルティング業務委託契約を締結させていただき、MySQLエキスパートのyoku0825さんに、いろいろと相談に乗って頂けることになりました。 MySQLについて検索したことがあるエンジニアなら、yoku0825さんのブログ「日々の覚書」のお世話になったことがない人はいないでしょう。それぐらいポピュラーなブログで、日本語で読めるMySQLの技術情報を長年発信し続けているのがyoku0825さんです。 yoku0825さん ということで、Garoonプログラマの杉山くんと一緒に、yoku0825さんにお話を伺ってみました。 yoku0825さんのお仕事 ──(風穴):普段、どんなお仕事をされてるのですか? yoku0825さん(以下、敬称略):GMOメディアという、BtoC向けのWebサー

                            インタビュー:MySQLエキスパートのyoku0825さんに聞いてみた - Cybozu Inside Out | サイボウズエンジニアのブログ
                          • MySQLでredis storage engineを作った - tom__bo’s Blog

                            MySQLのストレージエンジンはplugableになっていて、APIを実装すれば自作のストレージエンジンを組み込むことができる。 ということで、試しにRedisをストレージエンジンとして使うRedis Storage Engineを作りました。 github.com 途中で飽きてしまった ちまちま実装するよりC++の勉強とInnoDB読んだほうが良さそうと思ったので、お蔵入りするつもりでしたが、Yahoo! Japanでストレージエンジンを研究開発しているという話で個人的に盛り上がったので、改めて作ったところまでを見直して、整理しておこうという趣旨です。 実装したものはCREATE TABLEとDMLがある程度カバーされたおもちゃですが、自作ストレージエンジン開発のためのドキュメントはなくなっていく一方なので(MySQL internal documentを含む既存のドキュメント・ブログ・

                              MySQLでredis storage engineを作った - tom__bo’s Blog
                            • 実例で学ぶ MySQL/MariaDB デバッグ - nayuta-yanagisawa's blog

                              この記事では、MySQL/MariaDB のバグを修正するための典型的な手順を、具体例を通して解説する。次の MariaDB のバグを例として取り上げるが、基本的なデバッグの手順は MySQL でもまったく同様である。 MDEV-24868: Server crashes in optimize_schema_tables_memory_usage after select from information_schema.innodb_sys_columns なお、MySQL/MariaDB のデバッグ方法についての包括的な解説を与えるのは、この記事のスコープ外である。デバッグ手法の詳細を知りたい場合は、以下の一連の記事を参照してほしい。 Debugging MySQL/MariaDB (1): Build and Test Debugging MySQL/MariaDB (2): DBU

                                実例で学ぶ MySQL/MariaDB デバッグ - nayuta-yanagisawa's blog
                              • MySQL闇歴史のカレンダー | Advent Calendar 2022 - Qiita

                                edit_calendarHow to join the calendarYou can join the calendar by selecting an available date and registering the URL of the article you wish to link to. If a slot is available, you can go back to a past date to join!

                                  MySQL闇歴史のカレンダー | Advent Calendar 2022 - Qiita
                                • オンプレKubernetesでMySQLクラスタの運用を自動化するためにOperatorを自作している話

                                  CloudNative Days Spring 2021 ONLINE の発表資料です。 https://event.cloudnativedays.jp/cndo2021/talks/171

                                    オンプレKubernetesでMySQLクラスタの運用を自動化するためにOperatorを自作している話
                                  • Hasura, PostgreSQL, MySQL対応の速度改善ツールを作りました - GravityR

                                    はじめに DBが遅い原因の多くはインデックスの作り忘れです。 サーバーの性能アップやパラメータ変更の効果も大きいですが、まず最初に検討するべきはインデックスでしょう。 EXPLAINの結果をにらみながら、効果のありそうな場所を探します。 ただ、厄介なのはEXPLAINの結果が読みづらいことです。 EXPLAINの読み方を説明している本やサイトはいくつもありますが、EXPLAINを使う機会が少ないため、読める人が限られた、職人芸に近い技術になっています。 なので、EXPLAINを読まなくてもインデックスを作れるツールをGoとSvelteで作りました。 GravityRを使うと、下のようにEXPLAINをタイムライン形式にした図やインデックスの効果を表示したHTMLが作成されます。 紹介 GravityRはHasura、PostgreSQL、MySQLに対応しています。 実行ファイルをgith

                                      Hasura, PostgreSQL, MySQL対応の速度改善ツールを作りました - GravityR
                                    • Auroraバージョンアップに伴い改めてMySQL5.7の押さえるべきポイントについて勉強会を開催しました! - ANDPAD Tech Blog

                                      こんにちは!エンジニアの福間(fkm_y)です。 弊社でデータベースの技術顧問をして頂いている三谷(mita2)さんに、MySQL5.7の追加機能についての開発部向け勉強会を実施いただきましたのでそのレポートをお伝えします。 開催背景 弊社では三谷さんによるデータベース勉強会を定期的に開催しており、3月にもMySQLロックの基礎編の勉強会を開催しました。 ANDPADでは、今年の4月にAurora MySQLをVer.1(MySQL5.6互換)からVer.2(5.7互換)にバージョンアップを実施しました。 tech.andpad.co.jp Aurora MySQL Ver.2 になることで使えるようになった、MySQL5.7で追加された機能について開発者に知ってもらい、普段の開発に取り入れてもらうためにMySQL5.7の勉強会を開催することとしました。 今回は追加された150以上の新機能

                                        Auroraバージョンアップに伴い改めてMySQL5.7の押さえるべきポイントについて勉強会を開催しました! - ANDPAD Tech Blog
                                      • MySQLベースの分散インメモリDB「HeatWave」の最適化と運用自動化を支援する「MySQL Autopilot」、オラクルが発表

                                        MySQLベースの分散インメモリDB「HeatWave」の最適化と運用自動化を支援する「MySQL Autopilot」、オラクルが発表 オラクルは、MySQLのデータベースエンジンに分散インメモリデータベース機能を搭載し、高速なデータ分析が可能な「HeatWave」向けの新機能として、機械学習による性能の最適化などを提供する「MySQL Autopilot」を発表しました。 Say hello to MySQL Autopilot, the in-memory query acceleration engine for @MySQL HeatWave Database Service in #OCI. https://t.co/u9aKiwoJCf pic.twitter.com/ec6sMJ1Fhs — Oracle (@Oracle) August 11, 2021 HeatWave

                                          MySQLベースの分散インメモリDB「HeatWave」の最適化と運用自動化を支援する「MySQL Autopilot」、オラクルが発表
                                        • MySQLで直感的じゃない動きをするRAND()とSYSDATE()について - なからなLife

                                          端的にいうと SELECTのWHEREの条件の「右辺」に、RAND()やSYSDATE()のような非決定性関数を使うと、想定外のことが起こる。 戻ってくる行数が想定と異なる。 Indexが効かなくなる。(テーブルフルスキャン走る) どっちもなかなかのインパクトです。 追記:2019/05/30 PostgreSQLもMySQLと同じ挙動でした。(9.6と10系で確認) Oracleは、MySQLやPostgreSQLとは異なり、想定通りの件数が返ってきますし、Indexも効いてました。(11g R2で確認) 追記:2019/05/31 「PostgreSQLもMySQLと同じ」なのは、「ランダム関数利用時の挙動」です。日付系は調査しきれてません。 公式ドキュメントを読む限り、clock_timestamp()やtimeofday()を意図的に使わない限り、1つのSQLの中で違う日時を取り直

                                            MySQLで直感的じゃない動きをするRAND()とSYSDATE()について - なからなLife
                                          • MySQLで大量のシンプルなクエリを高速化する - Qiita

                                            どんなに軽いクエリでも、たとえばWebサーバーとMySQLの間のRTTが5msあって20クエリを実行したらRTTだけで100msかかってしまいます。 たくさんのデータをinsertするときは bulk insert (VALUES の後に複数の行を書くクエリ) を使うテクニックは有名です。しかしこのテクニックは次のような場合に使えません。 複数のテーブルに1行ずつINSERTしたい 複数のUPDATEやSELECTをまとめたい たとえば弊社のある案件で次のような場面がありました。 新規ユーザー作成時に大量のテーブルにINSERTしたい ログイン時に大量のテーブルにSELECTしたい こういった場面を高速化するために multiple statements と multiple result sets を利用しました。 Multiple Statements 複数のクエリを ; で区切って一

                                              MySQLで大量のシンプルなクエリを高速化する - Qiita
                                            • MySQL 8.4 LTS登場!!

                                              記事を書くのが遅くなってしまったが、先日MySQL 8.4シリーズが登場したので紹介をしておこうと思う。新機能の解説については機会を改めて書くとして、今回は主にアップグレードにまつわる重要なポイントを書き記しておく。 LTS = Long Term Support 以前の記事でも紹介した通り、MySQL 8.4はLTS = Long Term Supportのバージョンとなっている。長期間サポートするために互換性を最大限保証するバージョンである。前のメジャーバージョンであるMySQL 8.0シリーズのように、シリーズの途中で互換性が破壊されるような変更が入ることは基本的に無い。「バグ修正のためにどうしても仕様を変えなければならない」というような事態が生じる可能性はゼロではない。なので絶対に互換性が保たれるとは言い切れないところであるが、基本的には仕様変更はない方向で今後リリースされていくこ

                                                MySQL 8.4 LTS登場!!
                                              • MySQL 8.0.17でついにCloneプラグインが入った

                                                TL;DR MySQL 8.0.17 でついに俺待望の Cloneプラグイン が追加された CLONE LOCAL DATA DIRECTORY .. で、ローカルファイルシステムにほぼノンブロッキングで物理バックアップを吐き出す CLONE INSTANCE FROM USER@HOST:PORT IDENTIFIED BY 'password' .. でグループレプリケーションの経路を使ってフツーのレプリケーションと同じ3306の経路を使ってインスタンスの丸コピーができるらしい このへんを読んでおくのが良さげ MySQL :: MySQL 8.0 Reference Manual :: 5.6.7 The Clone Plugin MySQL :: MySQL 8.0 Reference Manual :: 5.6.7.13 Clone Plugin Limitations mysql

                                                • 致命的なバグを含まない最新版MySQLを探すには? 『MySQL徹底入門』共著者が語る、バージョン選びのポイント

                                                  MySQLの実運用とこれからについて掘り下げる「LINE Developer Meetup #73 - MySQL」。ここで登壇したのは、LINEの従業員でもある日本MySQLユーザ会のyoku0825氏。MySQL 8.0.28を選んだ経緯や評価のポイントについて説明しました。 セッションの要約と登壇者の自己紹介 yoku0825氏(以下、yoku0825):「ぼくらが選んだ次のMySQL 8.0」の話をします。私たちは、次のMySQLを8.0.28にしました。みなさんには、それぞれ29や30や自分の使いたいバージョンについて調べてもらいたいのですが、量が膨大になるので、今いるバージョンから新しいほうに向かって調べていくのではなく、最新のものからこれはダメだというものまで遡って調べていくのがおすすめです。 パラメーターに現れない、いきなり挙動が変わるかもしれないものは「What Is N

                                                    致命的なバグを含まない最新版MySQLを探すには? 『MySQL徹底入門』共著者が語る、バージョン選びのポイント
                                                  • PHPカンファレンス2021のMySQL関係のセッション2つがめちゃくちゃよかった - 遠い叫び

                                                    2021-10-09追記。「MySQLとインデックスとPHPer」のスライドのリンク間違っていました。修正済みです。 今回はいろいろ忙しいし書くつもりなかったけど、めちゃくちゃいいセッションが2つあったので、その感想だけ手短に書く。 PHPer が知るべき MySQL クエリチューニング PHPer が知るべき MySQL クエリチューニング by まみー | トーク | PHP Conference Japan 2021 #phpcon #phpcon2021 #php - fortee.jp アーカイブ スライド チューニング自体の話もあるんだけど、それだけじゃなくて、どう監視していくか、そもそもどう事前に防ぐか、みたいな話で、なんというか取り組み方がとにかくすごい。それだけでもよいセッションだったけど、最終的にクエリチューニングの話から、ユーザにつなげて行ったのがさらによかった。よく

                                                      PHPカンファレンス2021のMySQL関係のセッション2つがめちゃくちゃよかった - 遠い叫び
                                                    • MySQLのEXPLAINが直感とは異なっていた事例 - 私が歌川です

                                                      おもしろかったのでメモ。 CREATE TABLE `tbl` ( `id` BIGINT UNSIGNED NOT NULL, `done` BOOLEAN NOT NULL DEFAULT FALSE, PRIMARY KEY (`id`), KEY `done_and_id` (`done`, `id`) ); tbl テーブルに done = FALSE で100万行INSERTしておく SELECT id FROM tbl WHERE done = FALSE ORDER BY id ASC LIMIT 50 でidを順に集める 処理する UPDATE tbl SET done = TRUE WHERE id IN (...) で処理済にする これを done = FALSE な行がなくなるまで繰り返す KEY `done_and_id (`done`, `id`) ありでEXP

                                                        MySQLのEXPLAINが直感とは異なっていた事例 - 私が歌川です
                                                      • マルチAZ DBクラスター、RDS(MySQL,Postgres)の新しい高可用性オプションを試してみた | DevelopersIO

                                                        AWSチームのすずきです。 Amazon RDS でプレビューリリースされたマルチAZ DBクラスター (3−AZ DBクラスター)、 3つのアベイアビリティゾーン(AZ)に3つのインスタンスを配置、1台のライターと、2台のリーダーの構成を試す機会がありましたので、紹介させていただきます。 Readable standby instances in Amazon RDS Multi-AZ deployments: A new high availability option マルチAZ DBクラスターの作成 リージョン マルチAZ DBクラスターをサポートするオレゴン(us-west-2)を利用しました。 DBエンジン MySQL バージョン 8.0.26、PostgreSQL バージョン 13.4 が マルチ AZ DB クラスターをサポートします。 今回は MySQL 8.0.26 を

                                                          マルチAZ DBクラスター、RDS(MySQL,Postgres)の新しい高可用性オプションを試してみた | DevelopersIO
                                                        • 第122回 DockerでMySQLをもっと便利に活用してみる | gihyo.jp

                                                          本連載でも、何回かMySQLをDockerで扱う方法に関して簡単に説明をしてきました。今回は、DockerでMySQLを使う上でもっと便利に扱う方法を紹介してみたいと思います。特に、初期値のロードやコンテナ内にあるmysqlクライアントを使った時に文字化けする問題に対応していきます。 検証環境 今回はMacでDocker for Macを利用して検証を行っております。また、MySQLのDockerイメージは8.0.20で確認を行います。検証のデータには、第2回 MySQLにはじめてのデータを入れてみるで紹介されたKEN_ALL.CSVを利用します。 初期値のロードを自動化したい 第113回 anemoeaterを使ってスローログを可視化してみるでは、以下のように--secure-file-privを起動時に設定して起動していました。--secure-file-privは、指定されたディレク

                                                            第122回 DockerでMySQLをもっと便利に活用してみる | gihyo.jp
                                                          • Upgrading GitHub.com to MySQL 8.0

                                                            EngineeringUpgrading GitHub.com to MySQL 8.0GitHub uses MySQL to store vast amounts of relational data. This is the story of how we seamlessly upgraded our production fleet to MySQL 8.0. Over 15 years ago, GitHub started as a Ruby on Rails application with a single MySQL database. Since then, GitHub has evolved its MySQL architecture to meet the scaling and resiliency needs of the platform—includi

                                                              Upgrading GitHub.com to MySQL 8.0
                                                            • MySQL公式のDockerリポジトリがcontainer-registry.oracle.comに引っ越していた

                                                              この記事は MySQLのカレンダー | Advent Calendar 2023 の10日目の記事です。昨日は meijik さんの 最新のSQL標準(SQL:2023)とFirebird/MySQL/PostgreSQL | キムラデービーブログ でした。 TL;DRdockerhub のMySQLイメージはもうメンテナンスしていないっぽい ややこしいのだけれど、 docker pull mysql で取得するのは「Docker社がビルドしたMySQLイメージ」で、 docker pull mysql/mysql-server で取得するのが「Oracle社がビルドしたMySQLイメージ」だった引っ越したのは後者のみMySQL Server Community Edition - Repository Detail 5.7は5.7.16と5.7.33だけ、8.0は8.0.22とそれ以降し

                                                              • VercelからMySQL/PostgreSQLに接続したい場合にどういうアーキテクチャにするのが最適か

                                                                Issue VercelへのリクエストからServerless Functions が実行されると新規にDBに接続し、終了時にコネクションを切断する 一般的なコネクションプールを使ったアーキテクチャよりDB接続コストの影響を受ける Amazon RDS ProxyやCloud SQL Proxyのようなプラットフォームが提示する解決策がまだない

                                                                  VercelからMySQL/PostgreSQLに接続したい場合にどういうアーキテクチャにするのが最適か
                                                                • note の Aurora MySQL を v2 から v3 へアップグレードしました|tic40

                                                                  note ではメインデータベースとして Aurora MySQL を採用し、日々発生する膨大なトラフィックを処理しています。Aurora MySQL v2 (MySQL 5.7 互換) の標準サポートは2024/10/31 に終了するため、これを機に v3 (MySQL 8.0 互換) へのアップグレードを行いました。 アップグレードは無事に完了しましたが、いくつかの問題にも直面しました。これらを共有することで、これからアップグレードを検討している方へ参考になればと思います。 事前に検討した課題アップグレード後に致命的な問題が起きたらどうするかv3 へのアップグレード後に v2 へ切り戻すことは容易ではなく、スナップショットなどからの復元が必要になります。データをロールバックすることになるため、ユーザ影響が極めて大きく避けたい事態です。 そのため、基本的に切り戻しはできないという前提でアッ

                                                                    note の Aurora MySQL を v2 から v3 へアップグレードしました|tic40
                                                                  • MySQL :: Hash join in MySQL 8

                                                                    The build phase The literature usually divides hash join in two phases; the build phase and the probe phase. In the build phase, the server builds an in-memory hash table where rows from one of the inputs are stored, using the join attribute(s) as the hash table key. This input is also known as the build input, and let us assume that ‘countries’ is designated as the build input. Ideally, the serve

                                                                    • MySQLの新製品「HeatWave」はInnoDBの最大400倍高速、テラバイト級を超える大規模データを分析可能なインメモリデータベース。スクエニやSCSKがその性能を検証[PR]

                                                                      しかもHeatWaveはスケールアウトによる規模拡大が可能で、テラバイト級からそれを超える大規模データにも対応。 Oracle Cloud Infrastructureの備えるオーバーヘッドの小さなベアメタルサーバやネットワークを基盤としたスケールアウト機能により、サーバ台数とともにプロセッサコア数が増えても、ほぼリニアな性能向上を実現しています。 さらに、実行されたクエリと実行時間を学習データとして蓄積されていくため、HeatWave自身がインメモリデータベースにおけるデータの最適な配置を学習し、提案する機能も新たに備えるようになりました。 SQLを判別、最適なデータベースエンジンへ自動投入 この強力なデータ分析機能を、通常のMySQLとの違いをほとんど意識することなく利用できるのも、HeatWaveのもう1つの大きな特長でしょう。 HeatWaveはInnoDBとHeatWaveのデー

                                                                        MySQLの新製品「HeatWave」はInnoDBの最大400倍高速、テラバイト級を超える大規模データを分析可能なインメモリデータベース。スクエニやSCSKがその性能を検証[PR]
                                                                      • WSL2でMySQLを起動するときは mysqld --daemonize を使う - そーだいなるらくがき帳

                                                                        WSL2ではPID 1がinitd問題によってsystemdが起動できません。 そのため、systemctlが使えなくてMySQLが起動できないってなるのですが、yoku0825さんにやり方を教えてもらったのでメモとして残します。 そんなムズくないです。最近のmysqldには--daemonizeがあるのでそれを使えばokです— yoku0825 (@yoku0825) 2021年8月2日 つまりroot権限で mysqld --daemonize を叩けばOK。 ただ /var/run 配下は再起動時に /var/run/mysqld/ がなくて失敗すると思うので起動はフォルダを作って権限を付けてあげましょう。 $ mkdir /var/run/mysqld $ chown mysql:mysql: /var/run/mysqld $ mysqld --daemonize これでMySQ

                                                                          WSL2でMySQLを起動するときは mysqld --daemonize を使う - そーだいなるらくがき帳
                                                                        • Aurora MySQL 5.6のサポート終了とゼロダウンタイムアップグレードへの挑戦 - Cybozu Inside Out | サイボウズエンジニアのブログ

                                                                          こんにちは、グローバル向けAWS版kintoneのバックエンドエンジニアをしている@ueokandeです。 8月になって暑い日々が続きますね。そして8月と言えば、Amazon Aurora MySQL-Compatible Edition version 1 with MySQL 5.6 compatibility(以下Aurora MySQL 5.6)のサポート終了までおよそ半年となりました。 グローバル向けAWS版kintoneでは、Aurora MySQL 5.6を採用しているバックエンドサービスがいくつかあり、チームで移行作業に取り組んできました。この移行作業は単なるアップグレードだけではなく、ダウンタイムなしでデータベースを移行するチャレンジにも取り組みました。この記事ではAmazon Auroraの移行作業の全貌と、移行戦略を紹介します。 Aurora MySQL 5.6のサポ

                                                                            Aurora MySQL 5.6のサポート終了とゼロダウンタイムアップグレードへの挑戦 - Cybozu Inside Out | サイボウズエンジニアのブログ
                                                                          • MySQL InnoDBにおけるPKにUUIDを使ったINSERTのパフォーマンスの調査 - CubicLouve

                                                                            下記の記事を見て、PKにUUIDを使った際に内部的にどうなっているのかを確認してみました kccoder.com 比較対象として、PKにULIDを使った場合も調べてみました。 github.com ULIDはUUIDと互換性がある、ソート可能な識別子です。 MySQLのバージョン % mysql --version mysql Ver 8.0.19 for osx10.14 on x86_64 (Homebrew) スキーマ mysql> SHOW CREATE TABLE innodb_auto_increment\G *************************** 1. row *************************** Table: innodb_auto_increment Create Table: CREATE TABLE `innodb_auto_incr

                                                                              MySQL InnoDBにおけるPKにUUIDを使ったINSERTのパフォーマンスの調査 - CubicLouve
                                                                            • trdsqlはCSV,LTSV,JSONをDB(PostgreSQL,MySQL)にインポートするツールです

                                                                              trdsqlはCSV,LTSV,JSONに対してSQLを実行するツールと書いてあって、「PostgreSQLやMySQLに接続できるため、データをインポートする方法もある」と書いてあるため、オマケ的に捉えられているかもしれませんが、専用ツールを上回るくらい便利に使えます。 データをインポートしたい時に、そもそも候補としてすら挙がっておらず、寂しい気持ちがあるのですが、それよりも何よりも、それtrdsqlでサクッと出来ちゃうのに...という場面を度々目にするので、ここで紹介させていただきます。 そもそものtrdsqlの動作 そもそもtrdsqlの動作は、(デフォルトでSQLite3ですが)データベースに、テキストファイルを読み込んで、インポートし、SQLの処理をデータベースにお任せして、処理結果をテキストのいろんな形式に変換する。という動作になってます。 つまり、毎回データベースにテキストフ

                                                                                trdsqlはCSV,LTSV,JSONをDB(PostgreSQL,MySQL)にインポートするツールです
                                                                              • GitHub.com を MySQL 8.0にアップグレード

                                                                                Authors Jiaqi Liu Daniel Rogart Xin Wu GitHubは、15年以上前に単一のMySQLデータベースを持つRuby on Railsアプリケーションとしてスタートしました。それ以来、GitHubは高可用性を構築する、テスト自動化を実装する、データのパーティショニングを行うなど、プラットフォームのスケーリングと可用性のニーズを満たすために、MySQLアーキテクチャを進化させてきました。今日、MySQLはGitHubのインフラストラクチャの中核を担い、選択可能なリレーショナルデータベースの一部です。 このブログは、1200台以上のMySQLホストを8.0にアップグレードした物語です。私たちのサービスレベル目標(SLO)に影響を与えることなくフリートをアップグレードすることは小手先の技で済むようなものではありませんでした。計画、テスト、そしてアップグレード自体

                                                                                  GitHub.com を MySQL 8.0にアップグレード
                                                                                • 【AWS Summit Tokyo 2019 セッションレポート】サービス責任者が語る Amazon Aurora MySQL/PostgreSQL の詳細と内部構造 #AWSSummit | DevelopersIO

                                                                                  AWS Summit Tokyo 2019 Day2 (本日6/13)のセッション、「サービス責任者が語る Amazon Aurora MySQL/PostgreSQL の詳細と内部構造」をレポートします。面白かったです! ライブストリーミングでのセッション参加のレポートです。 セッション概要 このセッションでは、クラウドの技術革新を活用するためにゼロから設計された、クラウドネイティブデータベースサービスであるAmazon Auroraについて詳しく説明します。 Auroraはその記憶域として分散型マルチテナントログ構造化ストレージサービスを使用するなど、モノリシックデータベーススタックをサービス指向アーキテクチャに移行しています。 Auroraは、低レイテンシーレプリカなど、数々の革新的な機能を備えています。このセッションでは、主なイノベーション、パフォーマンス結果とその達成方法の確認、

                                                                                    【AWS Summit Tokyo 2019 セッションレポート】サービス責任者が語る Amazon Aurora MySQL/PostgreSQL の詳細と内部構造 #AWSSummit | DevelopersIO