並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 1389件

新着順 人気順

innodbの検索結果361 - 400 件 / 1389件

  • MySQLの歴史が面白い - Qiita

    まえがき MySQLの歴史をまとめました。 若干関係ない話題も書いてるかもしれませんが読んでいただけると幸いです。 (初投稿なので温かい目でみてください。。。) TL;DR (1995年) Michael WideniusらによってMySQLが開発される。 (2001年) 開発会社MySQL ABのCEOがMårten Gustaf Mickosに変わり、MySQLがオープンソース化される。 (2008年) MySQLがサンマイクロシステムズによって買収される。 (2009年) Michael Widenius「こんなバグまみれのバージョン(5.1)リリースするなら抜けます」 「生みの親」Michael WideniusがサンマイクロシステムズのMySQL開発チームを脱退。 →Michael Wideniusが独立した会社でMariaDBをリリース。 (ちなみに「My」はWidenius氏

      MySQLの歴史が面白い - Qiita
    • MySQLの全テーブルを最適化(OPTIMIZE TABLE)する

      パッケージソフトの開発会社や、業務系システムの開発会社にいた頃はデータベースといえばSQL ServerやOracleでした。 独立してからはオープンソース化の流れとライセンスの都合上でPostgreSQLを触る機会が多くなりましたが、MySQLを本格的に触り始めたのはわりと最近になります。MariaDBで興味を持ったのがきっかけですね。 Webサイトで使うデータベースを決めたら、まずメンテナンス用のスクリプトを組むのですが、はて、MySQLの場合はvacuumコマンド※がないのかな、と不思議に思いました。 PostgreSQLもバージョンアップによってvacuumしなくて良くなった!と聞いたときには、え、そんなバカな、と思いつつも一応調べてみるとauto vacuumできるようになったというだけでしたし。 MySQLのInnoDBは追記型データベースではないと言ってもメンテナンスコマンド

        MySQLの全テーブルを最適化(OPTIMIZE TABLE)する
      • Mackerel で RDS を監視するときによく使われるメトリック - Mackerel ブログ #mackerelio

        はてなで Mackerel を開発している id:wtatsuru です。 この記事は Mackerel Advent Calendar 2022 の25日目の記事です。前日は id:tukaelu の Mackerelのカスタムダッシュボードにアラートの一覧を表示する でした。こういうちょっとしたハックで解決する手法、私は大好きです。 本記事では、Mackerel を使って Amazon RDS を監視する際にどのメトリックが使われているのか、その背景と共に紹介しています。 AWSインテグレーションと Amazon RDS の紹介 よく使われるメトリックたち CPU利用率 メモリ利用量 ストレージの空き状況 データベースへの接続数 レプリカの遅延 クエリの処理時間 デッドロックの発生 まとめ AWSインテグレーションと Amazon RDS の紹介 AWSインテグレーションを用いると、A

          Mackerel で RDS を監視するときによく使われるメトリック - Mackerel ブログ #mackerelio
        • rbs_rails & steep で型のある Rails 開発を体験しよう - stmn tech blog

          こんにちは。スタメンの河井です。 RubyKaigi Takeout 2020 が楽しみですね。 Ruby 3.0 から型定義 & 型検査ができるようになると言われていますが、今の段階でもそれに関連した gem は公開されています。 今回は型のある Rails 開発を体験してみようということで、RBS・rbs_rails・Steep の3つの gem を紹介しようと思います。 RBS とは RBS とは、 Ruby プログラムの構造を記述するための言語です。 Ruby のソースコード(.rb ファイル)とは別にファイル(.rbs)を用意して型定義を記述していきます。 たとえば # message.rbs class Message def reply: (from: User | Bot, string: String) -> Message end という定義では Message クラス

            rbs_rails & steep で型のある Rails 開発を体験しよう - stmn tech blog
          • Debezium Usecases in Tabelog - Tabelog Tech Blog

            はじめに こんにちは。食べログシステム本部 技術部 マイクロサービス化チームの栗山です。 マイクロサービス化チームのミッションは「巨大なモノリシックサービスにおける開発の辛さを解消し、少人数のチームが自律的に意思決定しながら開発するためのシステム基盤を作る」です。2021年の Advent Calendar ではチームの成果として、食べログのレストラン検索インデックス同期システムを Change Data Capture (CDC) プロダクトの Debezium により改善した事例と、1 メッセージング基盤を Apache Kafka にリプレイスした事例を紹介しました。2 マイクロサービス化チームが提供するシステム基盤には例えば分散トレーシングのように特定の課題に特化したものもありますが、中には様々な課題に応用できる基礎技術的なものもあります。Change Data Capture (

              Debezium Usecases in Tabelog - Tabelog Tech Blog
            • 主キー制約とインデックスの話 - Qiita

              この記事は アイスタイル Advent Calendar 2022 2日目の記事です。 アイスタイルでDBAを担当している@suzukitoです。 今年のアドベントカレンダーは、主キー制約とインデックスの話にする事にしました。 過去の記事でDB関連のやつはこちらです。良かったら読んでみて下さい。 発端 アイスタイルのメインDBMSはSQL Serverなのですが、現在、DBMSの異機種移行に取り組んでいます。移行先は、MySQL互換の分散RDBMS TiDBです。 異機種移行なので、まずは、テーブル定義をSQL ServerからMySQLへ変換しなくてはなりません。 スキーマ変換自体はツールを使うのでそれほど難しくはありません。 面倒なのは、インデックスの統廃合です。 データベースは参照負荷分散を行っているため、1つのライターノードと、複数のリーダーノードに分かれているのですが、リーダーノ

                主キー制約とインデックスの話 - Qiita
              • ISUCON10決勝に並行チームとしてfujiwara組で参加してきました

                ざっくりいうとfujiwara組は本戦でいうと2位と3位の間くらいでした、いやー予選さえ突破できていればな〜〜。それにしても今年は1〜3位が全部学生というのはすごいですね! 学生枠じゃなくて社会人枠作ったらというジョークもでるくらいの結果でしたが、お題的にもみんな知ってるISUCONということで参加者によってドメイン知識の偏りがなかった結果学生がいかんなく伸びてきたというところなのかなぁと思っています。 ということで、ここからはfujiwara組のやったことの話とかを書いていきます。 始まるまで 並列チームは運営チームより「ミライノタワーに来ますか?」と聞かれまして、「はい! 行きます!」と答えた我々は新宿で参加することにしました。私は鎌倉住まいなので湘南新宿ラインで新宿にいくにあたって9時までに行くには7時半すぎの電車に乗る必要があるので仕事いくよりもよほど早起きが必要でしたが、ISUC

                  ISUCON10決勝に並行チームとしてfujiwara組で参加してきました
                • Amazon Aurora MySQL3におけるバイナリログの最適化 | Amazon Web Services

                  Amazon Web Services ブログ Amazon Aurora MySQL3におけるバイナリログの最適化 本記事は、2024年5月17日に公開された Binary logging optimizations in Amazon Aurora MySQL version 3 を翻訳したものです。 MySQLのバイナリログ(binlog)は、MySQLサーバ上のデータベースの変更を”イベント”と呼ばれる論理フォーマットでキャプチャするために使用されます。これらのデータベース変更には、DCL(CREATE USERやGRANTなど)、DDL(CREATE TABLE、ALTER TABLEなど)、DML(INSERT、UPDATE、DELETEなど)が含まれます。そのような変更がMySQLでコミットされると、サーバは 2-phase commit(2PC)を用いてトランザクションのバ

                    Amazon Aurora MySQL3におけるバイナリログの最適化 | Amazon Web Services
                  • 「MySQLに割り当てられているメモリ量を確認して」と言われたときに見る記事

                    実務でDBのメモリ設定を確認することがあったので、手順を残しておきます。 メモリの設定方法はカバーしていないので、設定が目的の場合は参考記事を参照してください。 ざっくり言うと MySQLのメモリ設定はクエリを流して調べることができる 一般的な環境の場合はINNODB_BUFFER_POOL_SIZEの値を確認する MySQLのメモリに関する設定は色々種類があって、使っているバージョンや内部エンジンによっても確認する項目が変わるから注意が必要 前提条件 MySQLのストレージエンジンがInnoDBであること(確認方法は後述します) MySQL全体で使用されるメモリの確認が目的であること 確認手順 【手順1】ストレージエンジンの種類を確認する MySQLは使用しているストレージエンジンによってメモリの使い方や確認項目が変わってきます。 今回は代表的なInnoDBを対象としているため、下記クエ

                      「MySQLに割り当てられているメモリ量を確認して」と言われたときに見る記事
                    • MySQLを止めずにレプリケーションをブーストする小技 - mita2 database life

                      先日は、MySQLユーザ会会 2020年7月に参加しました。 今回はWebや雑誌で連載の著者の方々が、執筆に至った経緯や、執筆時に心がけていることを語る回でした。 @kk2170 さんが「過去の自分に向けて書く」とおっしゃっていたのが、(そういう視点は自分の中になかったので)すごく響きました。 mysql.connpass.com -- 一刻も早くレプリケーション遅延を取り戻したい!そんな場合に使える小技を紹介します。 レプリケーションを止めずに有効化・無効化できるのみを取り上げています。 元に戻すのにレプリケーションを止める必要性のある方法だと、またそこでレプリケーション遅延が発生しますからね… CPU の governor を performance に変更する LinuxにはCPUクロックの調整機能があり、CPU governor が ondemand 設定の場合、負荷に応じて、CP

                        MySQLを止めずにレプリケーションをブーストする小技 - mita2 database life
                      • Amazon Aurora MySQL v1(5.6 互換)→ v3(8.0 互換)移行を計画する(2)調査の進め方と参考資料

                        これは Amazon Aurora MySQL v1(5.6 互換)→ v3(8.0 互換)移行を計画する(1)はじめに の続きです。 調査をどう進めるか? 大雑把に分けると、 テスト環境などを先に作って動作確認し、動かなくなった(または変な動きをする)箇所だけ原因調査して改修する 事前に資料や事例などを収集し、問題になりそうな箇所の「あたり」を付けてから実物での調査に入る の 2 通りの進め方があると思いますが、MySQL 5.7 以前から MySQL 8.0 への移行ではそれ以前の 5.x 間の移行よりも注意すべき点が多く、またそのまま移行しただけでは動かなくなる可能性が低くないので、小規模な利用かつ稼働率や性能などの要件が緩い環境でなければ、事前の情報収集をお勧めします。 参考資料① MySQL 5.7 以前→ 8.0 移行体験記など 探してもかなり少ないと思います。 当たり前かもし

                          Amazon Aurora MySQL v1(5.6 互換)→ v3(8.0 互換)移行を計画する(2)調査の進め方と参考資料
                        • PingCAPが国内最大級のNewSQLデータベースカンファレンス「TiDB User Day」を開催、事例を中心にTiDBの運用ノウハウを幅広く紹介

                          PingCAPが国内最大級のNewSQLデータベースカンファレンス「TiDB User Day」を開催、事例を中心にTiDBの運用ノウハウを幅広く紹介 2023年7月7日、PingCAP主催の国内最大級となるNewSQLデータベースカンファレンス「TiDB User Day」がハイブリッドで開催されました。 このカンファレンスでは、まずPingCAP米国本社より共同創業者兼CTOのEd Huang氏とMySQLのInnoDB元開発者でHeatWaveの開発リードを担っていたシニアアーキテクトのSunny Bains氏が来日し、「TiDBとMySQLと未来」というタイトルでTiDBの最新情報について講演後、LINEやSBペイメントサービスなど6社から事例を紹介するという形で進められました。最後は「ゲーム業界のデータベースを覗いてみよう」というパネルディスカッションで終了しました。 事例紹介1

                            PingCAPが国内最大級のNewSQLデータベースカンファレンス「TiDB User Day」を開催、事例を中心にTiDBの運用ノウハウを幅広く紹介
                          • 第129回 Internal Temporary Table(内部テンポラリテーブル)について[その1] | gihyo.jp

                            MySQLはステートメントの処理中にInternal Temporary Table(以降、内部テンポラリテーブル)を作成することがあります。 内部テンポラリテーブルは、ステートメントを処理するための最適化や結果を保持しておくために用いられる内部的に作成されるテーブルです。よって、ユーザーがこれを直接制御することはできません。内部テンポラリテーブルを使用するステートメントを実行すると内部で自動的に作成され、それが正常終了またはキャンセルされると自動的に削除されます。 内部テンポラリテーブルを必要とするステートメントの処理中の動作としては、まずメモリ内でテーブル(インメモリテンポラリテーブル)を作成します。それが大きくなりメモリ内に収まらないと自動的にディスク上のテーブル(ディスクテンポラリテーブル)に変換します。 また、以前の記事(第107回 CREATE TEMPORARY TABLEに

                              第129回 Internal Temporary Table(内部テンポラリテーブル)について[その1] | gihyo.jp
                            • B+Treeのページレイアウトと可変長タプル - Write and Run

                              これは 自作DBMS Advent Calendar 2020 - Adventar 1日目の記事です。 初日からギリギリで大丈夫なんですかねぇ(主催者)。 先日こういう記事を書きました。 Rustで古典的なDisk-Oriented DBMSを実装した話 - Write and Run その中で、 このあたりで固定長のページをノードとした B+Tree に、可変長のデータを入れようとすると途端に実装が面倒になることに気が付きます。 と書いたのですが、具体的にどう面倒になるのかについてはなにも説明しませんでした。 今回は固定長のページに可変長のタプルを入れるとなにがどう面倒なのかという話を解説します。 テーブルヒープにおける可変長タプル まず、B+Tree ではなく単純なテーブルヒープを考えます。 PostgreSQL のテーブルデータなどがそういう実装ですね。 これは CMU の例の講義

                                B+Treeのページレイアウトと可変長タプル - Write and Run
                              • tblsを導入してDBドキュメントを継続的にメンテナンスする - Pepabo Tech Portal

                                EC事業部でシニアエンジニアリングリードをしているkenchanです。この記事はEC事業部ブログリレーの4日目の記事で、3日目はakatsuuraによるRuby のコードリーディング会に参加して1年経ちましたでした。 カラーミーショップの開発チームでは、2020年末にデータベースドキュメンテーションツールとしてtblsを導入しました。本記事では、tblsの機能や導入の狙いから、実際の移行のプロセスをふりかえり、最後に今後やっていきたいことについて紹介します。データベースドキュメントの継続的なメンテナンスに課題を感じている方の参考になれば幸いです。 tblsとは何か k1LoW/tblsは、ホスティング事業部の@k1LoWが開発、メンテナンスをしているデータベースのドキュメンテーションツールです。tblsを使うことで、MySQLやPostgreSQLなどのRDBMSはもちろん、BigQuer

                                  tblsを導入してDBドキュメントを継続的にメンテナンスする - Pepabo Tech Portal
                                • Software Design 2020年7月号

                                  2020年6月18日紙版発売 2020年6月18日電子版発売 B5判/176ページ 定価1,342円(本体1,220円+税10%) ただいま弊社在庫はございません。 Amazon 楽天ブックス ヨドバシ.com Fujisan(定期購読のみ) 電子版 Gihyo Digital Publishing Amazon Kindle 第1特集 一から学ぶログ分析 事業を成長させる分析基盤を作るには 顧客の行動や好みを的確にとらえ,サービス改善につなげたい̶そのひとつの手段として,Webサイトやゲームで日々蓄積されるユーザーの操作記録(ログ)が注目されています。リリース後の分析のために,サービスの開発段階からログや分析基盤について考慮されることもあるでしょう。 その一方で現場では,「せっかく分析基盤を作ったのに,使いにくい,利用されない」という悩みも尽きないようです。きちんと使われ成果を生み出す分

                                    Software Design 2020年7月号
                                  • AWS Database Migration Service による Change Data Capture: 前編 - public note

                                    AWS Database Migration Service (以下、DMS) で Change Data Capture(CDC) を試してみました。 目的 構成 DMS のしくみ DMS の概要図 MigrationType 環境構築のポイント RDS パラメータグループ RDS への接続情報は SecretsManager に入れると便利 Replication Instance 用の Subnet Group を作成するときに特定の Role が必要 S3 への出力設定 捕捉対象とするスキーマとテーブルの指定 検証 EC2 から mysqlslap を実行 S3 出力結果 目的 目的は、Private Subnet にある RDS の変更レコードを、Google BigQuery へ転送することです。 CDC を行う OSS には Debezium がありますが、運用でなるべく楽を

                                      AWS Database Migration Service による Change Data Capture: 前編 - public note
                                    • MySQL 8.4 First Peek

                                      MySQL 8.4 has now been officially released, and this is a quick review of what is in the release notes. This is momentous as it is designated a Long-Term Support (LTS) release. Various 8.0 releases introduced material changes that impacted speed and stability, causing hair-pulling and swearing among those affected. Please note this is a first peek at the release notes, and comments in italics are

                                        MySQL 8.4 First Peek
                                      • 多くのデータベースに対応したマイグレーションツール migrate を MySQL で試した - kakakakakku blog

                                        データベースのマイグレーションを行うツール migrate を試した.migrate は MySQL / MariaDB / PostgreSQL / Amazon Redshift / MongoDB / Cassandra など,多くのデータベースに対応している.GitHub リポジトリを見るともっと多くのデータベースに対応していることがわかる.他にも GitHub や Amazon S3 に置かれたマイグレーションファイルを直接読み込む機能や Go ライブラリとしてアプリケーションに組み込める機能などもある.今回は MySQL を使ってマイグレーションの基本的な機能を試す❗️ github.com インストール macOS だと Homebrew を使って簡単に migrate CLI をインストールできる.今回は v4.15.2 を使う. $ brew install golang

                                          多くのデータベースに対応したマイグレーションツール migrate を MySQL で試した - kakakakakku blog
                                        • M1 Mac で MySQL5.7.28 が platform: linux/x86_64 では起動しなかったので別のイメージを使った

                                          2021/5/7追記:root ユーザーを使うときは ryo_kawamata さんの記事の方法が使えるようだ TL;DR しのゆさんの記事どおりでいけた M1 DockerでMySQLを含んだ環境を動かすためにやったこと | shinoyu | zenn https://zenn.dev/shinoyu/articles/74ebacbf0e4e55 root ユーザーを使うときは ryo_kawamata さんの記事の方法が使えるようだ Host xxx is not allowed to connect to this MySQL server の対応 | ryo_kawamata | zenn https://zenn.dev/ryo_kawamata/articles/mysql-connect-error M1 Mac で MySQL5.7.28 が platform: lin

                                            M1 Mac で MySQL5.7.28 が platform: linux/x86_64 では起動しなかったので別のイメージを使った
                                          • Comparing Graviton (ARM) Performance to Intel and AMD for MySQL

                                            Recently, AWS presented its own CPU on ARM architecture for server solutions. It was Graviton. As a result, they update some lines of their EC2 instances with new postfix “g” (e.g. m6g.small, r5g.nano, etc.). In their review and presentation, AWS showed impressive results that it is faster in some benchmarks up to 20 percent. On the other hand, some reviewers said that Graviton does not show any s

                                              Comparing Graviton (ARM) Performance to Intel and AMD for MySQL
                                            • メトリックプラグイン - mackerel-plugin-mysql - Mackerel ヘルプ

                                              mackerel-plugin-mysqlはクエリの実行回数など、MySQLに関する各種メトリックを監視できます。 MySQLのバージョンによりプラグインのインストール方法が異なります。あらかじめプラグインのインストール方法をご確認の上でご利用ください。 プラグインのインストール方法 MySQL 5.7以降、MySQL 8.0以降をご利用の場合 上記より古いバージョンをご利用の場合 監視できるメトリック 標準メトリック MySQL Command MySQL Join/Scan MySQL Threads MySQL Connections MySQL Slave status MySQL Table Locks/Slow Queries MySQL Traffic MySQL Capacity InnoDBに関するメトリック MySQL innodb Rows MySQL innodb

                                                メトリックプラグイン - mackerel-plugin-mysql - Mackerel ヘルプ
                                              • RaspberryPiでコンテナを始める~Docker編~ | SIOS Tech. Lab

                                                ~Docker編~ こんにちは、サイオステクノロジーのエンジニア 中島です。 昨今では、開発環境や運用でコンテナを使用することにより、インストールの簡略化やバージョン違いによるアプリケーション動作による不具合が少なく行えるようになってきました。 ただし、コンテナは仮想技術のためそのままの環境で動かすより、CPU、メモリ、ディスクといったリソースを多く使用します。このことより、低スペックの環境では動かすには難しいかったですが、昨今の低スペック環境でもそれなりに性能がある動作環境を作れるようになりました。 この性能アップはARMアーキテクチャでも恩恵を受けており、コンテナを動作させることに満足するスペックになりました。 このことより、去年(2022年)の9月ぐらいでは入手しやすかったシングルボードコンピュータのRaspberryPiでDockerを使用してコンテナを始めてみます。 Raspbe

                                                  RaspberryPiでコンテナを始める~Docker編~ | SIOS Tech. Lab
                                                • Microsoft Word - MyRocks_RocksDB_paper.docx

                                                  MyRocks: LSM-Tree Database Storage Engine Serving Facebook's Social Graph Yoshinori Matsunobu Facebook yoshinori@fb.com Siying Dong Facebook siying.d@fb.com Herman Lee Facebook herman@fb.com ABSTRACT Facebook uses MySQL to manage tens of petabytes of data in its main database named the User Database (UDB). UDB serves social activities such as likes, comments, and shares. In the past, Facebook used

                                                  • MySQL 5.7のオンラインDDLによるサービス無停止のカラム追加 - hacomono TECH BLOG

                                                    プロダクト開発チームの田中と申します。(社内ではたなしゅんと呼ばれております) 先日新機能のリリースを行いまして、リリース時に既存テーブルに対してのカラム追加が必要だったのですが、カラム追加のALTER TABLEが中々終わらないという問題が以前のリリース時に起きていたこともあり、事前に問題なくDBマイグレーション(Railsを利用しているため、この記事ではALTER TABLEなどのDB操作をマイグレーションと呼びます)が実施できるように調査を行いました。 その際に調査した内容や工夫したことなどを共有したいと思います。 過去のリリース時に起きた問題 ALTER TABLEが終わらない メンテナンスタイム中にデータベースのマイグレーションができるのが理想ですが、hacomonoのサービスの特性上24時間運営の店舗様にもご利用いただいているため、頻繁にメンテナンスタイムを設けることが難しく、

                                                      MySQL 5.7のオンラインDDLによるサービス無停止のカラム追加 - hacomono TECH BLOG
                                                    • RDBMSの基礎を学ぶーインデックス編

                                                      エンジニア何年もやって、ちゃんとDB学んでいなかった悔しさがずっとあったので、この間は色々とコースなり、本なりを探って勉強した。 DBMSは非常に大きなトピックで自分もまだまだほんの少ししか触れていなかったが、この記事では、とりあえずはインデックスからスタートしてようと思う。 (結構長くなってしまったので、TL;DRとして節ごとにまとめを置いています) DBMSのアーキテクチャー概要 データベースによって実装が異なるが、一般的に含まれるDBMSの構成コンポーネントとして、次のように挙げられる[1]。 DBMSはサーバークライエントのモデルを使っている。クライエントはクエリーを構成してトランスポートのレイヤーを経てサーバー側に送られる。クエリーに対してサーバー側が解析や最適化して、適切な実行プランを出す。実行プランは実行エンジンに渡されて、ローカルとリモートの実行結果を集計する。リモートとい

                                                        RDBMSの基礎を学ぶーインデックス編
                                                      • CakePHP 4 で Authentication プラグインを使ってユーザー認証を実装 / Twin Turbo Computing

                                                        はじめに 昨年12月に投稿した「CakePHP 4.0.0-RC2 でユーザー認証を実装」では CakePHP Authentication を composer でインストールすることができず、従来からの Auth コンポーネントを使って実装しました。 あれから月日が流れてインストールが可能になりましたので、今回は CakePHP 4 で CakePHP Authentication プラグインを使ってユーザー認証するコードをご紹介します。 GitHub - cakephp/authentication: Authentication plugin for CakePHP. Can also be used in PSR7 based applications. https://github.com/cakephp/authentication 目次 インストール users テーブル

                                                        • Hadoop (Hive, Ambari など) が使う DB を Percona XtraDB Cluster & ProxySQL で冗長化してみた - GMOインターネットグループ グループ研究開発本部

                                                          2018.04.10 Hadoop (Hive, Ambari など) が使う DB を Percona XtraDB Cluster & ProxySQL で冗長化してみた こんにちは。次世代システム研究室のデータベース と Hadoop を担当している M.K. です。 最近 MySQL 系のデータベース (Percona Server / PXC) に関するブログを立て続けに書いていましたが、今回は Hadoop と MySQL 両方に関する内容について書きました。 前々回のブログ:InnoDB だけじゃない!MyRocks (MySQL + RocksDB) ストレージエンジンを試してみた 前回のブログ:MySQLの冗長化を試す!~Percona XtraDB Cluster & ProxySQL & Replication~ Hadoop を構築すると毎回頭を悩ますこととして、H

                                                          • 5,000カラムのコメントを一気に更新したい! - freee Developers Hub

                                                            こんにちは。freeeでWebアプリケーションエンジニアをしている金山(@tkanayama_)です。 普段はいわゆるプレイングマネージャとして、freee人事労務というプロダクトの新機能開発を行っています。ですが今回は、そのメインの業務のかたわらで行った、データベースにまつわる小話を記事にしたいと思います。 モチベーション編: アプリケーション内にどんなデータがあるのか明確にしたい! 補足: カラムコメント以外の方法の検討 実現方法編1: SQL文の検討 補足: Railsが提供しているAPIを活用する方法の検討 実現方法編2: マイグレーションファイルの作成 実現方法編3: マイグレーションの実行 おわりに モチベーション編: アプリケーション内にどんなデータがあるのか明確にしたい! freee人事労務のアプリケーションのデータベースは300を超えるテーブルから構成され、そのカラム数を

                                                              5,000カラムのコメントを一気に更新したい! - freee Developers Hub
                                                            • Excelを用いた属人的な需給調整を、クラウド上のMySQLシステムへ変革。MySQL Database Serviceが選ばれた理由とは[PR]

                                                              「あさひ豆腐(こうや豆腐)」や「生みそずい」などの人気商品で広く知られる旭松食品株式会社は、長野県飯田市に本店を置く日本の食品メーカーです。スーパーなどで販売される一般消費者向けだけでなく、病院向けや介護施設向けなど、幅広く商品を提供しています。 同社のように商品の製造から販売までを提供する企業にとって、いつ、どのような商品にどのくらい需要があるか現状を把握して今後を予測し、それを元に材料の調達や生産の指示を行う「需給調整」は、会社の売り上げや利益に直結する重要なものです。 一方で、容易に想像できるように、幅広い商品を生産し提供する企業ほど、正確に需給調整を行うことは難しくなり、そのノウハウは属人的になっていく側面があります。 旭松食品においても同様で、例えば季節ごとの商品の変動、病院食や介護食では食べる人に合わせた柔らかさに関するバリエーションの考慮、生産能力やリードタイムの変動、在庫の

                                                                Excelを用いた属人的な需給調整を、クラウド上のMySQLシステムへ変革。MySQL Database Serviceが選ばれた理由とは[PR]
                                                              • MySQLの壊れたInnoDBファイル(.ibd)からのデータサルベージ / Restore corrupted (broken) InnoDB data from .ibd file - 雑な hinananoha

                                                                この記事の対象 この記事は、MySQL Serverが突然の死を迎えた上に、以下のような重症症状が出た方向けの記事です。 MySQLサーバが以下のようなエラーを吐いて起動に失敗する 2022-06-16T11:30:47.188361Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. 11:30:48 UTC - mysqld got signal 11 ; Most likely, you have hit a bug, but this error can also be caused by malfunctioning hardware. Thread pointer: 0x0 Attempting backtrace. You can use the following information t

                                                                  MySQLの壊れたInnoDBファイル(.ibd)からのデータサルベージ / Restore corrupted (broken) InnoDB data from .ibd file - 雑な hinananoha
                                                                • MySQL の InnoDB をオンメモリで使ってみる - SO Technologies 開発者ブログ

                                                                  こんにちは。 ATOM事業部の田村です。 今回は、MySQL の高速化の手段として、InnoDB エンジンをオンメモリで使った場合のパフォーマンスについて調査してみました。 はじめに MySQL には InnoDB エンジンだけではなく、他にもいくつものストレージエンジンがあります。 その中でも MEMORY エンジンは、その名の通りデータをメモリ上に持つため、処理が極めて高速という特徴があります。 ただし InnoDB とはいろいろ違う部分があり、InnoDB で使えていた SQL がそのまま通るわけではありません。 単に「高速化したい場合は InnoDB の代わりに MEMORY エンジンを使う」というわけには行かず、使い方・使い所をそれなりに考えてやる必要があります。 (詳細は Web 上に良質な記事が見つかるのでここでは省きます) MEMORY エンジンが真価を発揮するのは、キャッ

                                                                    MySQL の InnoDB をオンメモリで使ってみる - SO Technologies 開発者ブログ
                                                                  • ElasticsearchのNested fieldにMySQLのデータをLogstashで同期する - Qiita

                                                                    はじめに この記事では、Logstashを用いてMySQLのデータをElasticsearchに流すときにNested fieldにデータ入れる方法の紹介になります。 LogstashのJdbc input pluginを使うだけでは、NestedデータをElasticsearchに送ることはできません。そこで、Ruby filterを利用して同期する方法のサンプルになります。サンプルとなるMappingは、ユーザに対してn個の学校データを持つような構造となってます。詳しいMapping定義は、Logstashの設定を参照 準備 Dockerの環境構築 mysql jdbc-connectorの用意 環境構築 はじめにマウントしていく設定などを作成していきます。このサンプルでは、以下のような構造で設定していきます。 ./ ├── coordination │   ├── config │ 

                                                                      ElasticsearchのNested fieldにMySQLのデータをLogstashで同期する - Qiita
                                                                    • MySQL8.0.11からNO_TABLE_OPTIONSが削除されていた - Copy/Cut/Paste/Hatena

                                                                      あれ、もしかしてNO_TABLE_OPTIONSってMySQLから消えてる…? tbls でどうすればいいんだ…。— hamaco (@hamaco) 2020年6月11日 上記のツイートで知りました。 NO_TABLE_OPTIONSが削除されたVerのリリースノートは以下です。 docs.oracle.com NO_TABLE_OPTIONSとは SHOW CREATE TABLE の出力で MySQL 固有のテーブルオプション (ENGINE など) を出力しません。このモードはポータビリティモードで mysqldump によって使用されます。 ( MySQL 5.6 リファレンスより ) SHOW CREATE TABLE はテーブル定義をDDLで出力するコマンドです。例えば SHOW CREATE TABLE により以下のようなDDLが出力されたとします。 CREATE TABL

                                                                        MySQL8.0.11からNO_TABLE_OPTIONSが削除されていた - Copy/Cut/Paste/Hatena
                                                                      • 第102回 連載100回記念第2弾「OSSデータベースは100ヶ月後も生き残れるか?」、MySQL 8.3.0のリリース、PostgreSQL最新情報 | gihyo.jp

                                                                        OSSデータベース取り取り時報 第102回連載100回記念第2弾「OSSデータベースは100ヶ月後も生き残れるか?」⁠⁠、MySQL 8.3.0のリリース⁠⁠、PostgreSQL最新情報 この連載はOSSコンソーシアム データベース部会のメンバーがオープンソースデータベースの毎月の出来事をお伝えしています。前回紹介した連載100回記念セミナー第1弾につづく第2弾について報告します。 連載100回記念第2弾「OSSデータベースは100ヶ月後も生き残れるか?」 前回にお知らせしたとおり、1月27日のオープンソースカンファレンス(OSC)2024 Osaka(大阪開催)にて本連載の100回を記念した企画セミナーの第2弾を実施しました。今回のOSC 2024 Osakaは4年ぶりに展示とセミナーの両方が会場で開催することになり、OSSコンソーシアムメンバに加えてオープンソースソフトウェア協会(O

                                                                          第102回 連載100回記念第2弾「OSSデータベースは100ヶ月後も生き残れるか?」、MySQL 8.3.0のリリース、PostgreSQL最新情報 | gihyo.jp
                                                                        • エンジニアになりたきゃ、さっさとコード書いてください #技育祭 #ひろゆき

                                                                          文系です。手に職を付けたくて、プログラミングスクールで勉強を始めたものの、プログラミングスクールで学んだ程度のスキルではES(エントリーシート)が通らず、意味があるのか疑問に感じています ひろゆき氏は、「作りたいものがあったとき、インターネット上にある情報だけでプログラムを作れない人って、プログラミングに向いてない」と考えている。スクールで新しい言語や流行しているミドルウェアを学んでも、結局はマニュアルを読み解いて、実践できる力が必要である。そのためにも、独学できる能力を持っている方がいいと述べる。 独学する能力を身に付けるためのオススメの方法は、「いつも言っているんですけれど、『とほほのWWW入門』の『HTML』の項目から始めてください。僕はそこから始めたんで。今はもっと便利なサイトがあるかもしれないけれど……htmlが書ければ、プログラムは書けるんですよ」 「落ちない掲示板」を追求した

                                                                            エンジニアになりたきゃ、さっさとコード書いてください #技育祭 #ひろゆき
                                                                          • Ajaxを用いて動的セレクトボックスを作成する(CakePHP) - Qiita

                                                                            記事作成の背景 Ajaxって聞くけど、、、なんだ?っていうのと、個人的に動的セレクトボックスの ヒントを残しておきたくて作成しました。 なんかパッとする記事が見つけられなかったので、これが少しでも困ってる方の助けになれば幸いです。 環境 CakePHP4 (最新) jQuery MySQL 8.0 全体のコード とりあえずコード見てみるか・・・って方向けに最初に記載しておきます。 勉強会向けに色々書いてありますが、こちらの記事では必要箇所のみ抜粋して記述いたします。 https://github.com/Kurogoma939/cake_ajax_sample.git テストデータ 今回、検証環境はMAMPを用いて開発しました。 そのため、エクスポートしたSQLは以下の通りです。 保存場所 : app/SQL/create_tabel、app/SQL/insert_table CREATE

                                                                              Ajaxを用いて動的セレクトボックスを作成する(CakePHP) - Qiita
                                                                            • MySQL 8.0.24 の文字コードまわり - tmtms のメモ

                                                                              2021/4/20 にリリースされた MySQL 8.0.24 について私が気になったものについて。 まあ文字コードまわりだけなんだけど。 utf8 を utf8mb3 として出力する Client applications and test suite plugins now report utf8mb3 rather than utf8 when writing character set names. (Bug #32164079, Bug #32164125) Important Note: When a utf8mb3 collation was specified in a CREATE TABLE statement, SHOW CREATE TABLE, DEFAULT CHARSET, the values of system variables containing c

                                                                                MySQL 8.0.24 の文字コードまわり - tmtms のメモ
                                                                              • MySQL 8.0.21 では Multi-Table Trick が必要なくなったらしい - Qiita

                                                                                7/13 に MySQL 8.0.21 がリリースされました。 **リリースノート**を読んでいて、Optimizer Notes の 2 つ目に、 A single-table UPDATE or DELETE statement that uses a subquery having a [NOT] IN or [NOT] EXISTS predicate can now in many cases make use of a semijoin transformation or subquery materialization. This can be done when the statement does not use LIMIT or ORDER BY, and when semijoin or subquery materialization is allowed by a

                                                                                  MySQL 8.0.21 では Multi-Table Trick が必要なくなったらしい - Qiita
                                                                                • ディスクフルは危険かも

                                                                                  (7/3追記)以下の話題に加えて色々見つかったものも含めてディスクフル関連の問題は内部開発ツリーではとりあえず全部修正済みにできたので次かその次のリリースでは全部直ってると思います。(5.7,8.0共に) 今回は性能の話ではありません。MySQLがディスクフルで詰む可能性についてです。 とあるバグ(また新機能入れて共通パスを変更したせいで…既存に影響するのは入れなければバグ減るのに…)をきっかけに最近いろいろ調べていましたが、 一応情報共有したほうが良いと思うので可能と思われる限り共有します。 しかし、今後の対応は議論中でチームとして会社としての方針とは異なる可能性があるので、 現状を説明するに留めます。 しかしそもそも、ディスクフルまで使う容量設計は元来非常にマズいので 誰の環境も該当していないと思いますが、一応順を追って(遡って?)説明します。 とはいえ基本的な利用では問題は起きないは