タグ

MySQLに関するtomotaka-itoのブックマーク (36)

  • MariaDB 10.0 GA記念 並列レプリケーションって何? - interdb’s blog

    2014年3月末にMariaDB 10.0.10 GAがリリースされて、並列レプリケーション(Parallel replication)が目玉の1つっぽく書かれているので、簡単に解説。(2014.12.3追記:以下の書籍にも記述した。) 並列レプリケーションとはスレーブ側の機能で、従来はSQLスレッド1つで処理していたrelayログの再生を、複数のスレッドで並列に処理しようというもの。 MySQLにもパラレルworkerという機能があるが、MariaDBのそれとは並列化の粒度が全く異なる。(注:MySQL5.7でMariaDBと同レベルの機能が実装された。) MariaDBのマスタがコミットしてバイナリログを書く際に、並列実行できるかどうかをバイナリログに書き込んでいる。スレーブはそれに応じて、並列に実行できるSQLは並列に実行する。 具体例をみてみよう。 マスタでbinlog_commi

    MariaDB 10.0 GA記念 並列レプリケーションって何? - interdb’s blog
  • YouTube & Go言語: MySQLをパワーアップするVitess - ワザノバ | wazanova

    http://www.youtube.com/watch?v=qATTTSg6zXk 1 comment | 1 point | by WazanovaNews ■ comment by Jshiike | 約3時間前 YouTubeのシステムアーキテクトであるSugu SououmaraneのFOSDEM 2014での講演です。スライドはこちらからダウンロードできます。 1) Vitessとは Vitessは大規模な番環境でMySQL DBを効率的に利用するためのオープンソースプロジェクトです。概要はプロジェクトゴールのページ にまとまってます。 MySQLは機能が豊富だがスケールさせるときは苦労する。一方、NoSQLはスケーラビリティには問題がないが、アプリケーションが複雑になるとできることに限界があるのがネックになる。セカンダリインデックス、joinsなどがサポートされていない。

  • Google Cloud SQL now Generally Available with an SLA, 500GB databases, and encryption

    Product updates, customer stories, and tips and tricks on Google Cloud Platform

    Google Cloud SQL now Generally Available with an SLA, 500GB databases, and encryption
  • Pythonで作られた便利なコマンドラインツール MySQL Utilities

    MySQL Utilitiesならではの注意点 MySQL Utilitiesは従来のコマンドラインツール群とは違い、以下のような記述で接続先を指定します。 これは、従来のコマンドラインツール群が主に1つのMySQLサーバーを対象として動作するものなのに対して、MySQL Utilitiesは2つ以上のMySQLサーバーを対象として動作するものが多いため、このような記法になっています。 [MySQL Utilitiesの記法] --server=ユーザ名:パスワード@ホスト名:ポート番号 [MySQL コマンドラインツール群の記法] --user=ユーザ名 --password=パスワード --host=ホスト名 --port=ポート番号 なおWindows環境ではローカルホストとしてlocalhostと127.0.0.1のどちらを指定しても同じですが、LinuxやUNIXではホスト名に対

    Pythonで作られた便利なコマンドラインツール MySQL Utilities
    tomotaka-ito
    tomotaka-ito 2014/02/12
    なんかべんりそう
  • MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...

    しわっす!DBA 兼オペレーションエンジニア兼タスクマネージャやってる riywo です。何のネタを書こうかなぁと考えたのですが、正直ネタを仕込む時間もなかったので僕がいつもやってることをさらっと紹介するということで勘弁して下さい>< MySQL がおかしい! 03:14 hidek: なんかエラー出まくってるんだけど! 03:14 zigorou: MySQL と通信してるとこっぽい 03:15 riywo: 見ます こんなやりとりは皆さん日常茶飯事ですよね?ね?ね?こんな時に、DB に責任を持つものとして真っ先に対応するのが僕らの仕事です。でも、じゃあ具体的にこのあと何をしましょう?既にサービスはエラーだらけで一刻を争う状態です。 (対応開始) まずはエラーメッセージ 今回の様な場合はアプリのエラーログにどばっと MySQL に関するエラーが出ているでしょう。まずはそれを見ることが始ま

    MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...
  • MySQL DBマスタのDC間移設 | Ore no homepage

    システムをデータセンターAからデータセンターBに論理移設を行うときのメモ。 肝になるのはDB、特にマスタDBだと思うので、主題の通りおもにDBマスタの切り替えに焦点を当てて手順を書く。 移設先であるデータセンターBではサーバ構築やアプリケーション/コンフィグのデプロイは完了していて、新マスタおよび全スレーブは現マスタにレプリを張っている状態からスタートする。新マスタにはバイナリログ出力など、DBマスタとして振る舞うための設定が入っているものとする。 手順の要約 現DBマスタへの更新クエリをすべてブロックする 全てのスレーブと新マスタでshow slave statusしてログとポジションが一致していることを確認する 新マスタと全てのスレーブでstop slaveする 新マスタと全てのスレーブでreset slaveする 新マスタでreset masterする 全てのスレーブでchange

  • 読まないなんてもったいない! MySQL関連の連載記事 | キムラデービーブログ

    MySQLには日語・英語で様々な良があるのですが、もちろん無料で読めるWeb上の記事にもそれに迫る(いや一部それ以上の)良い記事があります。特に今ちょうど連載されている記事は毎記事ごとに臨場感があってGoodではないでしょうか? いや、読まないなんてもったいない!! ビギナーのあなたにはこの連載記事などどうでしょうか? MySQL事始 また、MySQL 5.6.xの動向が気になったり、今後採用を検討している人がざっくり新機能を知りたい場合には次の連載記事をお勧めします。 MySQL製品最新事情 上記の二連載はエバンジェリスト梶山さんのものですが、MySQLといえば、そう漢(オトコ)を忘れてはいけません。たっぷり「濃い」説明を堪能したい中〜上級者のあなたは、オトコの記事でヒートアップしよう! MySQLチューニング虎の巻 ここからも参照されているオトコの一冊。各MySQLイベントで褒め殺

    読まないなんてもったいない! MySQL関連の連載記事 | キムラデービーブログ
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • MySQL Connector/Jにおける大量INSERTのチューニング - SH2の日記

    ピンポイントチューニング講座です。まずは結果から。 このグラフは、以下のテーブルに50,000レコードINSERTしたときの処理時間を示したものです。性能に70倍以上もの差が出ているのはなぜか、見ていきたいと思います。 CREATE TABLE `loadtest` ( `id` int(11) NOT NULL, `data` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 方法1 ベースライン conn = DriverManager.getConnection(JDBC_URL, JDBC_USER, JDBC_PASS); pstmt = conn.prepareStatement("insert into loadtest (id, data) values (?

    MySQL Connector/Jにおける大量INSERTのチューニング - SH2の日記
    tomotaka-ito
    tomotaka-ito 2011/10/31
    バルクインサート強い
  • Introducing MySQL MHA (JP/LT)

    Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSSYahoo!デベロッパーネットワーク

    Introducing MySQL MHA (JP/LT)
  • InnoDB純正の全文検索エンジンInnoDB FTS

    2011-07-28 InnoDB純正の全文検索エンジンInnoDB FTS つい先日、MySQL-5.6.3-labs版がリリースがされました。この中にはInnoDBで動作する全文検索エンジン"InnoDB FTS"が含まれています。これまでは、MySQLとInnoDBの組み合わせで全文検索を行うためにはサードパーティの製品(mroonga 等..)が必要でしたが、これでズバっと選択肢が広がることになります。しかもInnoDBの開発チームが自ら開発した"純正の"エンジンということですから、これは大きな期待が持てます。 いったいどのような製品に仕上がっているのか、ざっくり記事やソースを読んで得た感触を述べてみたいと思います。 written by daijiro.mori どんなエンジンか? エンジンの概要については、 Overview and Getting Started with I

    InnoDB純正の全文検索エンジンInnoDB FTS
    tomotaka-ito
    tomotaka-ito 2011/07/29
    InnoDBに全文検索が追加
  • 超巨大な MySQL のデータを共用サーバーにインポートできる BigDump の使い方

    数GBのダンプファイルをインポートしたくても共用サーバーの場合ですと数十MBに制限されていることが多くて入れられません。VPS や専有サーバーの場合は設定を変更してアップロードできる最大サイズを変更する方法もありますが、ファイルサイズが増えるたびに変更するのは大変です。 しかし BigDump を使えば巨大な SQL ファイルをサーバーに合わせて分割インポートしてくれるので、ファイルサイズが大きくなってもサーバーの設定を変更しなくても良いですし、共用サーバーでも巨大なファイルをインポートすることができます。 ここでは BigDump を使った SQL ファイルのインポートを説明します。説明にあたって以下のページが参考になりましたのでこちらも御覧ください。 WikiCookRecipe日記: MySQLインポートファイルがでかすぎる時には BigDump を使ってみよう! MySQL のデー

    tomotaka-ito
    tomotaka-ito 2011/07/25
    BigDump
  • 大きなサイズのデータをmyisamからinnodbに移行する検証をしたメモ - Road To Nowhere

    ハマってなんとか解決したことや、現状困ったりしていることを書いてみる。 前置き 対象のデータ(現在1テーブル)は、約1億レコード、50G。引き続き膨張していくことが予想される。 今はmyisamで運用。更新処理が非常に高負荷。しかもロックが発生するため、オンライン中の更新ができない。1日1回新旧のテーブルを置き換えることで更新。 目指すところは、参照のパフォーマンスを落とさずにリアルタイム更新。次の方向で検証中。 まずテーブルを参照時の条件に沿う形で分割。さらに更新する単位でパーティショニング。これにより参照&更新のパフォーマンスアップを狙う。 myisamからinnodbにすることでロックなしでオンライン中の更新を実現にする。 検証環境 OS: CentOS 5.5 MySQL: 5.5.8 サーバの搭載メモリ: 32G ibdata1、大きくなり過ぎ! myisamと違ってinnodb

    大きなサイズのデータをmyisamからinnodbに移行する検証をしたメモ - Road To Nowhere
  • maatkitを一通り使ってみたメモ - はまさき

    #hbstudy11でid:marqsさんがMaatkitに関する発表をしていて,僕も仕事でちょこちょこ使っていたので ダイアリーあたりに書きますね と云ったきり,書く書く詐欺になっていたので,さすがに書こうと思います. 割とみなさん知っているツールだと思うのですが,ウェブ上で日語の情報がなかなか見つからないので,何かのお役に立てればと思います.というか英語読めってことなのかもしれませんが. Mattkit 公式 MySQL Tools and Management Software to Perform System Tasks by Percona Maatkitは「実践ハイパフォーマンスMySQL」の著者であるBaron Scheartzによって作り始められた,MySQLやPostgreSQLのようなオープンソースのデータベースのための高品質なコマンドラインツールです. 実践ハイパ

    maatkitを一通り使ってみたメモ - はまさき
  • 俺の2番底 開発日記:maatkitアーカイブ

    開発に関するメモ。 主にPerl,MySQL,javascript(jQuery),Linuxとかに関すること。 前回のエントリーで放置してたので、どんな機能があるのかまとめて見ます。 MOONGIFT  http://www.moongift.jp/2008/07/maatkit/ Maatkit: a toolkit of utilities and tools for MySQL  http://www.maatkit.org/ SourceForge.net: Maatkit  http://sourceforge.net/projects/maatkit/ MaatkitはBaron Schwartz氏が作成したMySQL便利ツール。(「High Performance MySQL」この辺の著者の人です) 解析ツールとしては ・mk-query-profiler SQL文を実行し

  • Percona Toolkit

    All of Percona’s open source software products, in one place, to download as much or as little as you need.

    Percona Toolkit
  • MOONGIFT: » MySQLの高度な管理ツール「Maatkit」:オープンソースを毎日紹介

    最近のWebサービス開発ではオープンソースのデータベースを利用することが多くなってきた。それだけ信頼性や安定性も向上してきたということだろう。以前はPostgreSQLの方が人気があったが、最近ではMySQLを選ばれる方が多いようだ。 mk-parallel-dumpのヘルプ そうした中で、必要になってくるのがMySQLの管理ツールだ。特に規模の大きな開発を進める上で、デフォルトのツールだけでは物足りないと感じていた人は、こちらのさらに洗練されたツールを使ってみよう。 今回紹介するオープンソース・ソフトウェアはMaatkitMySQL向けのコマンドラインツール群だ。 MaatkitPerlで作られたソフトウェアで、MySQLの高度な操作を可能にするツールが幾つも提供されている。それらはmk-ではじまる名前のコマンド名になっている。執筆時点では19の機能がある。 コマンド一覧 主なコマン

    MOONGIFT: » MySQLの高度な管理ツール「Maatkit」:オープンソースを毎日紹介
  • MySQLでALTER TABLE文の進捗状況を確認する - SH2の日記

    MySQLでテーブルへのカラム追加やテーブルの再編成を行うには、ALTER TABLE文を使用します。MySQLのALTER TABLE文は、変更後の定義にもとづく作業用テーブルを作成し、変更前のテーブルから作業用テーブルへデータをコピーして、最後に二つのテーブルを入れ替えるという仕組みになっています。テーブルへのインデックス追加についても、現在のところ大半のケースで内部的にALTER TABLE文が実行されています。 ALTER TABLE文の怖いところは、処理がもうすぐ終わるのかどうかが分からないところです。テーブルサイズが1GBを超えるあたりから分単位の時間がかかるようになり、100GBともなると当に終わるのか?と見ていて不安になります。メンテナンス時間が限られている場合は、作業を中断すべきかどうか難しい判断を迫られることもあります。 実は、というほどではありませんが、ALTER

    MySQLでALTER TABLE文の進捗状況を確認する - SH2の日記
  • LinuxのLVS(IPVS)でMySQLをロードバランスするときはtimeoutに注意 - (ひ)メモ

    構成 [appサーバ] -> [lvs] -> [MySQL]群 DRでMySQLのスレーブ群にロードバランス appサーバはDBコネクションのプーリング、永続化をしている 問題の現象 DBサーバ上ではmysqldへのコネクションが存在するのに、appサーバ上ではコネクションが存在しない。(netstat調べ) →無用なコネクションが残留するせいで、MySQLのmax_connectionsに達してしまう。 原因 MySQLの世界の無通信時のコネクションのタイムアウトはデフォルトで 28800秒 (8時間)。一方、IPVSの世界の無通信時のタイムアウトはESTABLISHEDなコネクションで900秒 (15分)。 # ipvsadm -Ln --timeout Timeout (tcp tcpfin udp): 900 120 300なので、DBコネクションの永続化等でコネクションを張りっ

    LinuxのLVS(IPVS)でMySQLをロードバランスするときはtimeoutに注意 - (ひ)メモ
    tomotaka-ito
    tomotaka-ito 2011/06/07
    なるほどです
  • MySQL 5.5をわずか30秒足らずでコンパイルするためのテクニック

    べっ・・・別にソースコードなんて自分でコンパイルしないんだからねッ!!などと言わずにまず聞いていただきたい。30秒でMySQLのコンパイルが出来るというこの事実を。最近、細々とビルド時間の短縮に取り組んでいたのだが、正直ここまで爆速になるとは思わなかった。今日はビルド時間短縮のためのテクニックを紹介するので、是非皆さんも参考にして、快適ビルド生活を送って頂きたい!! 自己ベストは26.262秒マシンの状態や負荷の状況によって多少ビルドにかかる時間は前後してしまうのだが、これまでの自己ベストはなんと26.262秒。平均すると30秒ぐらい。以前は1分を切ることがなかったのだが、今ではなんとその半分でビルドが出来てしまう。これは純粋にmakeをするのにかかった時間であり、cmake(MySQL 5.5以降)やconfigure(MySQL 5.1以前)にかかる時間は除いてある。だがそれでも速い。

    MySQL 5.5をわずか30秒足らずでコンパイルするためのテクニック
    tomotaka-ito
    tomotaka-ito 2011/04/18
    ここにある工夫をなにもしない場合どのぐらいかかるのだろう, と思ったら1分を切らないと書いてあった。だいたい倍速になるぐらい?