並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1127件

新着順 人気順

MySQLの検索結果1 - 40 件 / 1127件

  • MySQLのInstant DDLによるカラムの追加はかつてテーブルの末尾にしかできなかったが、8.0.29以降はどの場所にも追加できるようになっていた - polamjaggy

    って知ってました?自分は知りませんでした… The INSTANT algorithm can add a column at any position in the table. Before MySQL 8.0.29, the INSTANT algorithm could only add a column as the last column of the table. MySQL :: MySQL 8.0 Reference Manual :: 17.12.1 Online DDL Operations しかしながら、マニアックな制限が存在するようで、The Oracle MySQL Japan BlogのALGORITHM=INSTANTを使用した列追加・削除という記事によると、 この機能を実現するために、行のバージョン管理に関する考え方がテーブル・メタデータに導入されました。

      MySQLのInstant DDLによるカラムの追加はかつてテーブルの末尾にしかできなかったが、8.0.29以降はどの場所にも追加できるようになっていた - polamjaggy
    • Aurora MySQLログの収集と分析基盤の紹介 - LayerX エンジニアブログ

      こんにちは!バクラク事業部 Platform Engineering部 SREグループの taddy(id:sadayoshi_tada)です。 みなさんはデータベースサーバのログの分析が必要になった時どのように対処されていますか?バクラクではAmazon Aurora MySQL互換(以降Auroraと呼称します)を使用していて、Aurora内部に保持しているログを収集し、分析する基盤を運用しているためこの記事でその紹介をします。 Aurora内部に保持しているログの出力 Auroraのログダウンロードのための手段検討 AuroraのログダウンロードとS3アップロードの概要 実行基盤の選定 S3に格納したログの分析 S3に保管しているログのパス概観 Audit logの分析例 SOC1監査での利用 まとめ 終わりに Aurora内部に保持しているログの出力 Aurora内部に保持している

        Aurora MySQLログの収集と分析基盤の紹介 - LayerX エンジニアブログ
      • 次期PostgreSQL 18では非同期I/Oの採用により性能が2~3倍向上する見通し

        PostgreSQL開発チームは先月(2025年5月)にリリースした「PostgreSQL 18 Beta 1」で非同期I/O処理を実装したことを明らかにしています。 同チームのテストによると、シーケンシャルスキャンやビットマップヒープスキャン、バキュームといった処理において2~3倍の性能向上が見られたとのことです。 同期処理はシンプルだが待ち時間が発生する これまでのPostgreSQLは同期I/O処理を採用していました。これは例えばOSにファイルリードのようなI/O処理を依頼すると、処理が終了して結果が返ってくるまで、すべてのPostgreSQLの内部処理が一時停止することを意味します。 同期I/O処理の利点はすべてのI/O処理が同期的に行われるため、実装が比較的シンプルで容易だというメリットがあります。これはバグを引き起こしにくいとも言えます。 一方で、ひとつひとつのI/O処理が完了

          次期PostgreSQL 18では非同期I/Oの採用により性能が2~3倍向上する見通し
        • AWS公式からAurora MySQL MCP Serverがリリース!自然言語でクエリ実行可能 - CyberAgent SRG #ca_srg

          メディア統括本部 サービスリライアビリティグループ(SRG)の鬼海雄太(@fat47)です。 #SRG(Service Reliability Group)は、主に弊社メディアサービスのインフラ周りを横断的にサポートしており、既存サービスの改善や新規立ち上げ、OSS貢献などを行っているグループです。 本記事は、AWS公

            AWS公式からAurora MySQL MCP Serverがリリース!自然言語でクエリ実行可能 - CyberAgent SRG #ca_srg
          • Zennの検索スピードを5倍に高速化した話

            @dyoshikawaです。 先日、以下のリリースでZennのサイト内検索の高速化を行いました。 結論を先に述べるとCDNキャッシュやPostgreSQLの全文検索インデックスを活用して対応しました。この記事では本パフォーマンス改善の取り組みについて紹介します。 Zennの構成 ZennはGoogle Cloud上に構築されており、フロントエンドNext.jsとバックエンドRailsをそれぞれCloud Run上にホスティングしています。上の図では省かれていますが、CDNにはCloudflareを利用しています。 データベースはCloud SQL for PostgreSQLを利用しています。 検索速度とDB負荷に課題 2025年2月頃、某AIクローラーによる検索ページへの集中アクセスによりDBインスタンスのCPU使用率が100%近くに張り付いてしまうという事象が発生しました。 生成AIサ

              Zennの検索スピードを5倍に高速化した話
            • 怪奇?スケールアウトするとパフォーマンスが落ちるデータベース - カミナシ エンジニアブログ

              こんにちは。ソフトウェアエンジニアの古屋です。データベースのメトリクス、見てますか?私のチームが開発運用を担当する『カミナシ レポート』では Amazon Aurora MySQL をメインのRDBMSとして利用しています。この Aurora MySQL について少し課題がありました。 課題1. 増え続けるコスト 昨年の12月以降くらいでコスト、とくに Aurora:StorageIOUsage が右肩上がりで増えています(図の青色)。 課題2. 悪化するパフォーマンス (実際に運用されているのを初めて見たのですが)『カミナシ レポート』で利用している Aurora クラスターはCPU利用率(しきい値:60%)に基づいたオートスケールの設定がされており、アクセスのピーク帯になると負荷に応じて自動的にスケールアウトするようになっています。ただ、スケールアウトしてもパフォーマンスがよくなってい

                怪奇?スケールアウトするとパフォーマンスが落ちるデータベース - カミナシ エンジニアブログ
              • GitHub - enhancedformysql/enhancedformysql: This is the homepage of our MySQL improvement project, showcasing optimizations and enhancements across various MySQL versions.

                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                  GitHub - enhancedformysql/enhancedformysql: This is the homepage of our MySQL improvement project, showcasing optimizations and enhancements across various MySQL versions.
                • 「背中を預け合える仲間と働きたい」。DBエンジニア 田中翼(yoku)が語るMySQLと仕事観 - さくマガ

                  さくらインターネット 「背中を預け合える仲間と働きたい」。DBエンジニア 田中翼(yoku)が語るMySQLと仕事観 # エンジニア# 社員インタビュー 2025年5月30日 社会を支えるパブリッククラウドを一緒に作りませんか? >>さくらインターネットのエンジニア採用情報を見る 社員インタビュー記事や求人情報をお届け! >>さくマガのメールマガジンに登録する さくらインターネットではエンジニアの採用を積極的におこなっています。今回は、2025年5月に入社した、クラウド事業本部 テクノロジー室の田中翼にインタビューを実施しました。インタビュアーは、一足早くさくらインターネットへ入社したクラウド事業本部 後藤秀宣。これまでのキャリアのほか、転職理由やこれからさくらインターネットでやりたいことなどを聞きました。 田中 翼(たなか つばさ) プロフィール さくらインターネット クラウド事業本部

                    「背中を預け合える仲間と働きたい」。DBエンジニア 田中翼(yoku)が語るMySQLと仕事観 - さくマガ
                  • AWS上で異なるDBに存在するテーブルの結合 - Honda Tech Blog

                    # Backgroud システムの規模やアーキ設計により、複数以上のデータベースを使用することはあります。その場合、データの重複管理を避けるため、異なるデータベースに存在するテーブルを結合しデータ検索するのはよくあります。 # MySQL 同一のMySQLインスタンスでは、DB跨ぐデータ検索は簡単にできます。例えば、下記のSQL文でそれぞれの販売と仕入れDBから一括データ検索できます。 select db_sales.products.id, db_sales.products.name, db_suppliers.stockroom.amount from db_sales.products left join db_suppliers.stockroom on db_sales.products.id = db_suppliers.stockroom.id; インスタンスも異なる場合、

                      AWS上で異なるDBに存在するテーブルの結合 - Honda Tech Blog
                    • 第245回 MySQL 9.2と9.3の新機能について | gihyo.jp

                      MySQLのInnovation ReleaseとなるMySQL 9.2が2025年1月、MySQL 9.3が2025年4月にリリースされました。以前の記事の第233回 MySQL 9.0と9.1の新機能についてと同じように、今回もMySQL 9.2と9.3の中から気になる新機能や変更点を、いくつかピックアップして簡単に紹介したいと思います。 MySQL 9.2の新機能 最初に、MySQL 9.2の新機能と変更点について紹介します。 CREATE_SPATIAL_REFERENCE_SYSTEM権限の追加 GIS管理のために追加された新しい動的権限です。この権限を持つユーザーは以下のステートメントを実行できます。 CREATE SPATIAL REFERENCE SYSTEM CREATE OR REPLACE SPATIAL REFERENCE SYSTEM DROP SPATIAL R

                        第245回 MySQL 9.2と9.3の新機能について | gihyo.jp
                      • マルチ DBMS ベンチマークツール BenchBase を MySQL で使ってみる | スマートスタイル TECH BLOG

                        はじめに 今回の記事では、BenchBase というベンチマークツールについて紹介してみたいと思います。 弊社では、データベースの性能評価やワークロードのシミュレーション、検証にベンチマークツールをよく使用しています。 主に MySQL 用のベンチマークツールとしてメジャーな以下の利用頻度が高いです。 mysqlslap sysbench もし TPC ベンチマーク(派生ワークロード)を実行したい場合は、以下のツールを個別で準備することになります。 sysbench-tpcc tpcc-mysql TPC-H tpce-mysql HammerDB 今回、これらのツールでは実装されていない(または実行できない)、とあるベンチマークを実行する要件があり、それが実現できる BenchBase にたどり着きました。 試用してみたところ、非常に使い易い便利なソフトウェアだったので、普及がてら紹介さ

                          マルチ DBMS ベンチマークツール BenchBase を MySQL で使ってみる | スマートスタイル TECH BLOG
                        • 初めて MCP を使うなら Docker MCP Toolkit がおすすめ - Qiita

                          Docker Desktop の新機能である Docker MCP Toolkit があれば、非常に簡単な手順で MCP ツールを利用できます。 今回は MCP クライアントに Cline を用いて Docker MCP Toolkit を利用する方法を解説していきたいと思います。 Docker MCP Toolkit で利用できる MCP サーバ一覧 2025/5/10 時点で 109 の MCP サーバが利用可能となっています。 以下、利用可能な MCP サーバの抜粋です。 Filesystem MCP Server(ローカルファイル操作) Fetch MCP Server(Webコンテンツ取得) Playwright MCP Server(ブラウザ操作) LINE MCP Server(メッセージ送信) PostgreSQL readonly MCP Server(データベース取得)

                            初めて MCP を使うなら Docker MCP Toolkit がおすすめ - Qiita
                          • AWS RDS Aurora I/O-Optimized の基礎知識 | 外道父の匠

                            このように更新の激しいデータベースの場合、I/O 費用が結構高くなるので -$1700/月 くらいのコスト削減になることは珍しくありません。当然ですが、この3つの条件はサービスや Auroraクラスタによって異なるので、こういう風に整理して計算してみましょうという例に過ぎません。 インスタンスとデータ容量の費用が上昇する分を、I/O 費用で相殺以下にできるかがポイントなので、まずは Cost Explorer でグループ化の条件を「使用タイプ」にして Aurora:StorageIOUsage の費用を確認するところから始めましょう。 I/O の使用量 負荷試験時などサービスのリリース前においては、正確に I/O リクエスト数を予想することは難しいです。そのため、リリースやアップデート前後において、標準からI/O最適化へ、I/O最適化から標準に変更することを視野に入れておくとよいです。 変

                              AWS RDS Aurora I/O-Optimized の基礎知識 | 外道父の匠
                            • 今日から『自由』にMySQLの性能改善始めます。(MySQL開発チームを退職しました)

                              前回の在籍も含めると、累計9年半、本家MySQLチームでInnoDBの性能改善をターゲットに開発の仕事してきました。5.7でのb-tree index scaleや、8.0の初期の新機能で入ってしまった性能問題の修正など貢献できましたが、ここ数年は開発が進む度に導入される性能劣化に追いつけなくなってしまいました。悪いコードを見つけて直そうとしても抵抗が大きいのも大きな要因です。(遅くしたいのでしょうか?遅いことが認識できないのでしょうか?) この度、体制変更で退職を勧められたのを機に、別の営みでMySQL/InnoDBの性能を改善していくことにしました。どうせ、性能劣化に(私よりも)無頓着な現体制では私が性能を改善することは困難なので、成果は出ないでしょう。(直しても、同時に導入される新機能・修正による劣化に改善分を喰いつぶされることもしばしばあった、と考えています。キリがありません。そも

                              • Rails: SQLよりもデータベースプロトコルの方が問題だ(翻訳)|TechRacho by BPS株式会社

                                概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Database Protocols Are Underwhelming | byroot’s blog 原文公開日: 2025/03/21 原著者: byroot -- Railsコアコミッター、Rubyコミッターであり、ShopifyのRuby/Railsインフラチームのシニアスタッフエンジニアです 日本語タイトルは内容に即したものにしました。 この業界でのキャリアが長い方なら、リレーショナルデータベースのクエリ言語としてのSQLのメリットや問題点に関する議論を随分目にしてきたことでしょう。私もORMのメンテナーとして、SQLにはいくつか不満な点があるものの、おおむね実用的に使えています。とにかくSQLの勢いはとても大きいので、SQLに代わる代替言語を空想したところで意味はありません。 しかし、これまでデータベース方面でろく

                                  Rails: SQLよりもデータベースプロトコルの方が問題だ(翻訳)|TechRacho by BPS株式会社
                                • GitHub - shibayu36/mysql-schema-explorer-mcp

                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                    GitHub - shibayu36/mysql-schema-explorer-mcp
                                  • MySQLのスキーマ情報を圧縮して提供するMCPサーバーを作った - $shibayu36->blog;

                                    AIを使ってMySQLのクエリを書くときは、自分が関わっているプロジェクトのスキーマ情報を読み込ませることが必須である。ただし超巨大プロジェクトに携わっていると、特定データベースのテーブル数が数百規模になってしまう。この場合スキーマのダンプ情報を読み込ませるとコンテキスト長が非常に長くなってしまい、失敗することが多かった。 この問題を解決するため、MCPを使ってスキーマ情報をいい感じに圧縮して返すことでSQL生成がもっとうまくいくのではないかと考えた。そこで、テーブル一覧と詳細情報を段階的に取得できるMCPサーバーを、MCPの勉強がてら作ってみた。 作ったもの https://github.com/shibayu36/mysql-schema-explorer-mcp 次のように動く。 実際に大きめなプロジェクトで試したところ、いつもよりうまく生成できるようになった気がする(仕事のプロジェ

                                      MySQLのスキーマ情報を圧縮して提供するMCPサーバーを作った - $shibayu36->blog;
                                    • MySQL徹底入門 第5版 MySQL 8.4 LTS対応 | 翔泳社

                                      待望の新メジャーバージョンMySQL 8.4対応! 【本書の概要】 メジャーバージョンであるMySQL8.4に対応した、『MySQL徹底入門 第4版』の改訂版です。 「運用データ型」「レプリケーション」「文字コード」など、実務で役立つ知識を学ぶことができます。 MySQLのバージョンアップに合わせ、実行例や説明の最新化はもちろん、MySQL Shellについての解説の追加や、各種ツールも見直し、『より効率的』に『より快適』にMySQLを活用するためのノウハウを余すところなく解説します。 【対象読者】 ・MySQLの初心者から中級者 ・システム開発者 ・データベース関連プログラマー ・データべースに興味のある学生や企業のDB関連リサーチャーなど 【執筆者】 日本MySQLユーザ会メンバー(MyNA)。 日本MySQLユーザ会 は、日本におけるMySQLのユーザ団体。 日本におけるMySQLの

                                        MySQL徹底入門 第5版 MySQL 8.4 LTS対応 | 翔泳社
                                      • Cloudflare Workers、フルスタックアプリの構築とホスティングが可能に。新たにNext.jsやAngularなどに対応、MySQLへの接続も

                                        Cloudflare Workers、フルスタックアプリの構築とホスティングが可能に。新たにNext.jsやAngularなどに対応、MySQLへの接続も Cloudflareは、同社が提供するグローバルなコンテンツデリバリーネットワーク(CDN)のエッジにおいてJavaScriptのランタイムを提供する「Cloudflare Workers」の新機能や機能強化を発表しました。 You can now deploy static sites and full-stack applications on Cloudflare Workers – the primitives are all here. https://t.co/lDgcd4kh9j #DeveloperWeek — Cloudflare (@Cloudflare) April 8, 2025 Next.jsサポート、MySQ

                                          Cloudflare Workers、フルスタックアプリの構築とホスティングが可能に。新たにNext.jsやAngularなどに対応、MySQLへの接続も
                                        • 2025年度 新卒研修「100分で学ぶ サイバーエージェントのデータベース活用事例とMySQLパフォーマンス調査」 | CyberAgent Developers Blog

                                          こんにちは、Service Reliability Group(SRG)の鬼海 雄太(@fat47)です。 SRGは主に弊社メディアサービスのインフラ周りを横断的にサポートしており、既存サービスの改善や新規立ち上げ、OSS貢献などを行っているグループです。 本記事では2025年度のサイバーエージェントの新卒研修で「100分で学ぶ サイバーエージェントのデータベース活用事例とMySQLパフォーマンス調査」という研修を実施した話と、その内容について簡単に紹介しています。 例年の新卒技術研修について サイバーエージェントでは毎年、新卒のエンジニア全員を対象にした技術研修が実施されており、 セキュリティ研修やAWSなどのクラウド実習、ハッカソン形式のチーム開発研修 などの研修が実施されています。 しかし、データベースに関する内容は新卒のエンジニア全員を対象にした研修では実施されておらず、各部署(子

                                            2025年度 新卒研修「100分で学ぶ サイバーエージェントのデータベース活用事例とMySQLパフォーマンス調査」 | CyberAgent Developers Blog
                                          • マルチテナントなWebサービスでデータベースをBigQueryからPostgreSQLに移行してRow Level Securityを導入した - エムスリーテックブログ

                                            こんにちは。AI・機械学習チームの高田です。 マルチテナント構成のWebサービスでは、データの分離とセキュリティを確保することが非常に重要です。マルチテナント構成とは、1つのシステムやアプリケーションを複数の顧客(テナント)で共有する設計アプローチを指します。 今回は、当社のあるプロダクトで行った2つの改善施策について紹介します。 BigQueryからPostgreSQLへの移行: より効率的なデータアクセスとコスト削減 Row Level Security(RLS)の導入: データベースレベルでのセキュリティ強化 これらの施策により、セキュリティ向上とコスト削減の両方を実現できた事例を解説していきます。 なぜ移行したのか テナントID分離型を採用 移行前のアーキテクチャ 移行後のアーキテクチャ PostgreSQLテーブル構築のためのバッチ処理の実装 PostgreSQLクエリの最適化

                                              マルチテナントなWebサービスでデータベースをBigQueryからPostgreSQLに移行してRow Level Securityを導入した - エムスリーテックブログ
                                            • データベースエンジニアの仕事を楽にする。PgAssistantの紹介

                                              この資料は2026年3月27日に開催された「第52回 PostgreSQLアンカンファレンス@オンラインの登壇資料」です。 PostgreSQLをAIの力を借りて改善する、PgAssistantの紹介をします。

                                                データベースエンジニアの仕事を楽にする。PgAssistantの紹介
                                              • DHHが考えるRailsのバリデーション設計

                                                3行まとめ 単純なバリデーション(必須・範囲・文字数など)はHTMLとDB制約、CHECK制約があれば十分であるというのが最近のDHHの主張。 SQLiteではCHECK制約が少し貧弱なため、制約変更の可能性がある場合は従来通りアプリケーションでもバリデーションした方がいい。 Rails初心者はDHHの方法をそのまま採用するのはやめた方が良い。 調べたきっかけ 最近DHHがonce.comでのCampfireをはじめとしたプロダクトで、NULL制約やDB制約で防げるようなRailsのモデルのバリデーションを積極的には利用しないでいるという主張をしている。 DHHの主張を要約すると以下のようになる。[1] HTMLでのバリデーションが優れている 例えば、input type=“email” にしておくとブラウザで勝手にメールアドレス形式ではない場合にエラーにしてデータ送信をしないようにしてく

                                                  DHHが考えるRailsのバリデーション設計
                                                • 【連載】Cybozu.comクラウド基盤の全貌 - Cybozu Inside Out | サイボウズエンジニアのブログ

                                                  イントロダクション クラウド基盤本部の吉川拓哉です。「Cybozu.comクラウド基盤の全貌」と題して私たちが運用している基盤を連載形式で紹介することになりました。第1回となる本記事はイントロを兼ねたサイボウズのクラウド基盤の概要説明です。 サイボウズのクラウド サイボウズが自社クラウド「cybozu.com」でサービス提供を開始したのは2011年。パッケージ提供していたグループウェア製品であるOfficeやGaroon、メールワイズをクラウド版として移植し、業務アプリケーションを手軽に開発できるkintoneをクラウド製品として新たに開発するなど、クラウドを通じてより多くのユーザーにサービスを届けられるよう努めてきました。 その土台となる基盤を構築しているのがクラウド基盤本部のエンジニアであり、サービスを24/365で安定稼働させつつ、ビジネス成長に合わせてアーキテクチャレベルでの基盤刷

                                                    【連載】Cybozu.comクラウド基盤の全貌 - Cybozu Inside Out | サイボウズエンジニアのブログ
                                                  • 読み取り専用 DB を Aurora から SQLite に移行してコストを 1/8 に削減した話 - エムスリーテックブログ

                                                    こんにちは。クラウド型電子カルテであるエムスリーデジカルのソフトウェアエンジニア兼 Team SRE をしている井上 渉(@wtr_in)です。キャベツ相場が落ち着いてきて一安心しています。 今回は、デジカルを構成するサービスの DB(基本的に読み取りのみ)を Aurora MySQL から Fargate 上の SQLite に移行し、性能も向上しつつ当該サービス全体のインフラコストを約 1/8 まで大幅に削減できた話をご紹介します。 移行前・移行後の構成とその効果 移行前 (Aurora MySQL) 移行後 (SQLite) 移行で得られた効果 移行を検討した背景 なぜ SQLite を選んだか SQLite のデータをどこに置くか インメモリ SQLite へのデータロード まとめ We are hiring! 移行前・移行後の構成とその効果 今回 SQLite を採用したサービス

                                                      読み取り専用 DB を Aurora から SQLite に移行してコストを 1/8 に削減した話 - エムスリーテックブログ
                                                    • PostgreSQLにあるSQLインジェクションの脆弱性が9年以上発見されずアメリカ財務省への侵入に使用されてしまう

                                                      2024年12月30日、「中国政府が支援する高度で持続的な脅威攻撃者」がアメリカ財務省の機密データを管理するシステムを侵害しました。この侵入にはPostgreSQLに9年以上存在していたのに誰も気付いていなかったSQLインジェクションの脆弱(ぜいじゃく)性が使用されたことが判明しており、ソフトウェアエンジニアのニック・アグリアーノ氏が記事にまとめています。 Hidden Messages in Emojis and Hacking the US Treasury https://slamdunksoftware.substack.com/p/hidden-messages-in-emojis-and-hacking SQLインジェクションは多くのセキュリティの教科書の冒頭に載っているような非常に有名な攻撃手法で、SQLインジェクションを通して攻撃者はSQL文を書き換えられるためシステムに重

                                                        PostgreSQLにあるSQLインジェクションの脆弱性が9年以上発見されずアメリカ財務省への侵入に使用されてしまう
                                                      • slow_query_log / long_query_time / log_output でどれくらい違うかベンチマークその1

                                                        TL;DR 特に何の結論もまだ出ていないベンチマーク スローログをテーブルに吐かせるのって現実的かどうかを見たかっただけ --threads=3 なのでもうちょっと並列性を上げないと本番向きではない ジェネラルログファイル吐かせるのとスロークエリログ全部吐かせるのは同じくらい性能劣化するよなあと思ってた(どっちもmutexは1つしかないから)けどこれくらいだと差はよくわからない CSVストレージエンジン遅い…ファイルサイズを大きくしていくともっと遅くなるかも? 久しぶりにベンチマーク取った。 ベンチマーク元: 8 CPUスレッド / 16GB Memory ベンチマーク先: 2 CPUスレッド / 4GB Memory / 128MB buffer_pool / 10テーブルで100MB ibd (でも実際には42MBくらいしかバッファプールに載ってないので空きページはあるはず) コマンド

                                                          slow_query_log / long_query_time / log_output でどれくらい違うかベンチマークその1
                                                        • MySQLのDDLを安全に使うための全て

                                                          これはなに ども、LT開発部のもりたです。 今回はMySQLのスキーマ変更(DDL)について調べました。 DDLってなんとなく使うことは可能なんですが、データ量が増えていくにつれて障害の要因になったりもしますよね。もりたも障害が起きてDDLを調べたクチなんですが、調べれば調べるほどDDLに関する断片知識が絡まり合い、整理をつけるのが大変でした。今回はその断片を撚り合わせ、綺麗に縫合することで、この1記事だけで大体全てがわかるようにしました。もしDDLでお困りの方がいらっしゃいましたら、この記事(と、そこから辿れる諸記事)を足がかりに基礎と応用を身につけていただければと思います。 また、有識者の方々は是非まさかりを構えながら読んでください。技術的な間違いや現場的にはこうだよという事項がありましたら、コメント欄に記載いただけると幸いです。 構成 構成 まず構成ですが、以下の通り進めます。 前提

                                                            MySQLのDDLを安全に使うための全て
                                                          • 【MySQL】手を動かして学ぶトランザクション入門

                                                            「これを見たらトランザクション周りがざっくり分かる」を目指します。 MySQLを前提に解説しますが、他のDBMSでもベースとなる部分は同じだと思います。 トランザクションとは? ざっくり言うと「ここからここまでワンセットです」な処理のことです。 たとえば、以下のようなSQLが2つあったとします。 この2つは絶対にセットで実行したいとします。 ですが、この2つを実行した結果「1つ目は成功したけど2つ目は失敗した」となった場合、「在庫だけ減ってしまった!」になってしまいます。 こういうときにトランザクションが使えます。 この2つをトランザクションとして実行すると、以下のどちらかに強制できます。 すべて実行する すべて実行しない つまり、中途半端に実行されるのを防げます。 トランザクションの書き方 トランザクションとして実行するには、BEGINとCOMMITで囲います。

                                                              【MySQL】手を動かして学ぶトランザクション入門
                                                            • あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (4) 完結篇 - asken テックブログ

                                                              こんにちは、インフラのテックリードをしている沼沢です。 この記事は、「あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡」の第4弾です。 過去の記事はこちらからお読みください。 あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (1) 絶望篇 あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (2) 希望篇 あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (3) 困難篇 度重なるメンテナンス延期に見舞われましたが、ついに完結します。 4th Take 3rd Take で発覚したレプリケーションエラーをスキップ後、レプリケーションは再開していたため、レプリケーションが追いつくのを待つだけの状態でした。 そのため、すぐさまビジネスサイドとの再々々調整

                                                                あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (4) 完結篇 - asken テックブログ
                                                              • MySQLのオンラインDDL(INPLACE)がどう動くか理解する

                                                                これはなに この記事は米シリコンバレーでデータベースコンサルや教育事業を展開するKloudDB社がポストした『Understanding How ONLINE DDL (INPLACE) works in MySQL』の翻訳記事です。 この記事ではDDL(スキーマ変更クエリ)の内部処理について詳細に解説しています。DDLはシンプルに利用できるものの、一歩踏み込むと複雑怪奇で理解の難易度は高いものでした。この記事はそこに焦点を当てたものになります。 翻訳するにあたり、技術的な正確性を担保しつつ、日本語表現として自然になるよう努めました。もし記事の中で技術的な観点で不正確な箇所があれば訳者の責任ですので、コメント欄などでご指摘いただけると幸いです。 また、翻訳について許可を下さったSrinivasa R Inaganti氏(同社CEO)に感謝します。 以下、訳者による前書き的なものを挟んで、翻

                                                                  MySQLのオンラインDDL(INPLACE)がどう動くか理解する
                                                                • Migrate very large databases to Amazon Aurora MySQL using MyDumper and MyLoader | Amazon Web Services

                                                                  AWS Database Blog Migrate very large databases to Amazon Aurora MySQL using MyDumper and MyLoader 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. Aurora provides advanced features such as Amazon Aurora

                                                                    Migrate very large databases to Amazon Aurora MySQL using MyDumper and MyLoader | Amazon Web Services
                                                                  • ClinPeer Railsプロジェクトの技術選定(2025年版) - メドピア開発者ブログ

                                                                    こんにちは。サーバーサイドエンジニアの三村(@t_mimura39)です。 こちらでご案内した通り、弊社で新しくリリースした「ClinPeer」の裏側をご紹介します。 tech.medpeer.co.jp 今回はClinPeerのバックエンドについての簡単なシステム概要と選定技術の紹介編です。 2024-2025年にrails newをした新鮮なRailsプロジェクトの様子をお楽しみください。 目次 システム概要 rails stats Gemfile 技術選定 Ruby Ruby on Rails Puma ActionPack::CloudfrontViewerAddress Trilogy SolidQueue SolidCache Kaminari Async::HTTP::Faraday Ueki Jb Nokogiri Blazer ActiveHash Flipper Log

                                                                      ClinPeer Railsプロジェクトの技術選定(2025年版) - メドピア開発者ブログ
                                                                    • さいきんの MySQL との付き合い方 〜 MySQL 8.0 より後の世界へようこそ 〜 | ドクセル

                                                                      スライド概要 PHP カンファレンス名古屋 2025 2025/2/22 ルーム シンフォニー 14:45 〜 AI 要約: このセッションでは、MySQL 8.0 以降の新しいリリースモデルと移行方法について詳しく説明しています。MySQL 8.0 のサポートが終了する注意点や、メジャーバージョンの管理方法、アップグレードやダウングレードの手段、さらにクラウド環境での注意点についても触れています。また、非互換性についても重要なポイントを挙げて解説しています。 Qiita や Zenn でいろいろ書いてます。 https://qiita.com/hmatsu47 https://zenn.dev/hmatsu47 MySQL 8.0 の薄い本 : https://github.com/hmatsu47/mysql80_no_usui_hon Aurora MySQL v1 → v3 移行計

                                                                        さいきんの MySQL との付き合い方 〜 MySQL 8.0 より後の世界へようこそ 〜 | ドクセル
                                                                      • あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (3) 困難篇 - asken テックブログ

                                                                        こんにちは、インフラのテックリードをしている沼沢です。 この記事は、「あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡」の第3弾です。 第1弾、第2弾はこちらからお読みください。 あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (1) 絶望篇 あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (2) 希望篇 さて、前回はデータディクショナリ不整合が解消され、いよいよメンテナンス日を待つのみというところまで漕ぎ着けましたが、ここから(やらかし含む)様々な困難に直面していきます。 1st Take 2024年9月 中旬 レプリケーションを貼ったところまでは良かった。 良かったのですが、ここで私は大きなミスを犯します。 それは、「binlog 保持期間の設定を短くしすぎた」ことです。 も

                                                                          あすけんの Aurora 2 → Aurora 3 へのメジャーバージョンアップ軌跡 (3) 困難篇 - asken テックブログ
                                                                        • Azure Database for MySQLのIOPS設定の変更で月額約100万円のコストダウンが実現しました

                                                                          はじめに こんにちは。イオンスマートテクノロジー株式会社(AST)でSREチームの林 aka もりはやです。 本記事はAzureのマネージドなMySQLである”Azure Database for MySQL Flexible Server”(以後はDB)のIOPS設定機能やコストについてまとめたシリーズの第3弾となり、コストダウンを達成した成果報告の記事となります。 TL;DR DBの"Storage"の"IOPS"の設定を、"Pre-provisioned IOPS"から"Auto scale IOPS"へ変更した 結果としてDailyで約4万円弱のコストダウンとなり、月額およそ100万円、年額で1200万円の削減が見込めた リスクとして心配していた、急激なIOPS需要へのスケール遅延も(現状は)発生していない 本シリーズの過去記事振り返り 結果の詳細について述べる前に、過去2記事を紹

                                                                            Azure Database for MySQLのIOPS設定の変更で月額約100万円のコストダウンが実現しました
                                                                          • https://www.uber.com/en-JP/blog/mysql-at-uber/

                                                                            • Go の ORM はどのようにして AUTO INCREMENT で採番された値を取得しているのか? - MySQL 編 - カミナシ エンジニアブログ

                                                                              こんにちは。カミナシで「カミナシレポート」の開発を担当しているソフトウェアエンジニアの佐藤です。 カミナシレポートのバックエンドは Go で開発しており、データベースには Amazon Aurora MySQL を使用しています。また、データベースアクセスには ORM ライブラリの GORM を採用しています。 ほとんどのテーブルでは、プライマリキー(ID列)に AUTO INCREMENT を利用しています。これらのテーブルに GORM の Create メソッドなどを使って新しいレコードを挿入すると、AUTO INCREMENT で採番された値が自動的に対応する Struct のフィールドに反映されます。 AUTO INCREMENT による値の採番は MySQL 側で実行されているため、Go 側の Struct のフィールドに反映させるためには、Go アプリケーション側が何らかの方法

                                                                                Go の ORM はどのようにして AUTO INCREMENT で採番された値を取得しているのか? - MySQL 編 - カミナシ エンジニアブログ
                                                                              • JavaScriptランタイムのBun、PostgreSQL/MySQLのDBクライアント機能を搭載

                                                                                オープンソースで開発されているJavaScriptランタイム「Bun」の最新版となる「Bun 1.2」正式版が登場しました。 Bun v1.2 is herehttps://t.co/m3Q4xJ7l88 — Bun (@bunjavascript) January 22, 2025 BunはNode.js互換のJavaScriptランタイム機能に加えてTypeScriptのランタイム機能も備え、さらにトランスパイラ、バンドラ、タスクランナー、npm互換のパッケージマネージャなど、JavaScript/TypeScriptのツールチェーンを統合したソフトウェアです。 Windows版、Linux版、macOS版が提供されています。 PostgreSQLクライアント機能を搭載 Bun 1.2ではPostgreSQLのデータベースクライアント機能が搭載されました。ライブラリやSDKに依存するこ

                                                                                  JavaScriptランタイムのBun、PostgreSQL/MySQLのDBクライアント機能を搭載
                                                                                • ECSとRDSをやめて、AWSコストを9割削減しました

                                                                                  はじめに こんにちは。BEENOSのがれっとです。 AWS上にアプリケーションを構築する際、一般的なのはECS + RDSという組み合わせです。私も社内システムをそのような形で構築しました。 しかし、使わないときにもインスタンスが動き続けてしまうため、大量のトラフィックを捌かないアプリケーションにおいてはコストが見合わないものとなってしまいます。 そこで、ECS + RDSという構成からLambda + EFSの構成に社内システムを移行して、コスト削減した話を紹介します。 前提 以下の構成のアプリケーションを移行しました。 Blitz.js 内部に下記を使用 Prisma Next.js PostgreSQL テーブル数は12 (_prisma_migrationsテーブルを含めて13) AWS 構成図 移行前 移行後 リレーショナルデータベースを用いることが必須のアプリケーションを構築す

                                                                                    ECSとRDSをやめて、AWSコストを9割削減しました