Scale, performance, and reliabilityScale, performance, and reliabilitypowered by Vitess The ultimate MySQL database platformPlanetScale is the world’s most advanced, fully-managed MySQL database platform.
![The ultimate MySQL database platform](https://cdn-ak-scissors.b.st-hatena.com/image/square/9cd3afb84d1db1afa6c49a01bddfac0424072e56/height=288;version=1;width=512/https%3A%2F%2Fplanetscale.com%2Fassets%2Fsocial%2Fhomepage-2024-social.jpg)
タイトル通りですが、とりあえず列挙 STATSPACK的なもの、ないの? ありません。 価格差考えてください。 TuningPack的なもの、ないの? (ry 過去に実行したSQL、誰がいつ実行したか追えないの? いわゆる監査ログってやつ。 無料でやりたいなら、generarl_logで全SQL吐いてください。 あとは有償/無償でプラグイン追加すればできるようになりますよ。 I/Oなり、なんらかのリソースを食うけどね。 監査やらない前提で必要スペック見積もっておいて、事故ってから騒ぐのやめてください。 クエリ遅いんだけど! Oracleと同じ感覚で一文でバッチリ取ってくる数百行のクエリ書いて悦に入ってないで、実行計画まず見てくれ。 MySQLで相関サブクエリが死ぬほど遅いってことは、一度でも自分で調べる意思があってググッていれば、嫌でも目に入るだろ。 まさにggrks(死語? この相談を受
とあるガラケーコンテンツのお話 オーソドックスなLAMP構成で朝起きるとログイン出来ないと問題が毎日あった エラー内容はDBに問い合わせができない状態 MySQLの接続がタイムアウトしていた データが流れないとサーバ側から接続をきられる apacheのpreforkで夜にアクセスが少なく、たまたま処理をしていなかったプロセスがmysqlにアクセスしようとすると接続できなかった Morning bugといわれるらしい pingやtcp_keep_alive設定すればいいのではと言われるが、超小規模サイトでは毎回接続すればいいのではという結論になった ちなみにこのサイトの会員数は10人! -> それ全部テスト端末では?! 企画の人は大きくなる!というが、大体大きくなる前に終了していくサービスが多いので、1つくらいあたった時に捻出できるリソースは準備しておく程度でいい 小規模しかやらない開発者は
オープンソースに明るくない人々にとっては、オラクルのMySQL運用にまつわる騒動はあまりピンと来ないかもしれない。オラクルが2010年にサン・マイクロシステムズを買収した際、オープンソースの技術者たち(私もその一人だ)は、オラクルがMySQLを台無しにするのではないかと危惧した。オラクルが開発への投資を縮小したり、技術をクローズド化するような事態を想定したのである。しかしそんなことは起こらなかった。実際にはオラクルの管理の下、MySQLのパフォーマンスは劇的に改善され、コードの大部分もオープンのまま残されている。 それでもなお、オープンソースのコミュニティには未だにオラクルのMySQL運用をバッシングする人たちがいる。ちょっとオラクルが気の毒になるほどだ。 崩壊の危機にさらされたMySQLコミュニティー確かにオラクルはコミュニティに対してあまり友好的ではなかった。そして、同社に何十億ドルも
先日大きめ(といっても500万行くらい)のテーブルにインデックス付きのカラムを追加しようとして痛い目にあったので調査。 大きめのテーブルにカラムやインデックスを追加するとどうなるか 今回は単純に、「ALTER TABLE 〜 」で追加しようとしました。追加するカラムは3つで、 varchar(255) インデックスなし varchar(255) ↓のdate 型カラムとマルチカラムインデックスの形式のユニークインデックスあり date インデックスあり SQL を実行し、状況を「SHOW PROCESSLIST」で監視していたら、1つ目のカラム追加で次のような状態に… 最初にState が「copy to tmp table」状態になり、次の状態に遷移するまで1時間かかる 次にState が「Repair with keycache」状態になり、完了までに1時間かかる 次のカラム追加に対す
このエントリーはMySQL Casual Advent Calendar 2013 10日目の記事です。カジュアル! このへんでそろっとカジュアル詐欺と言われるのを防止するために、カジュアルな話を書いてみました。 MySQL5.6も正式リリースされてもうすぐ1年経ち、5.7の足音も聞こえてきている今日このごろですが皆様のMySQLのご機嫌はいかがでしょうか。 新機能や性能向上/bugfixに対応するためにMySQLのバージョンアップを行う機会や性能や不具合調査を行うことも多いかと思います。データベースのバージョンアップは特にメジャーバージョンアップの場合、パラメータのデフォルト値などの変更や仕様変更の影響(オプティマイザの変更)をアプリケーションが受けないか、性能の変化などを検証すると思います。 検証 実際に検証を行う場合、本番環境で流れているクエリをバージョンアップ先のDBに実際に流して
最近 Sequel というライブラリを触ってるので簡単にまとめてみます。 Sequel Sequel は Ruby の構文で SQL クエリを記述するためのライブラリです。 SQL の文法が嫌いな自分には持って来いです。 RDB 毎の差異も吸収してくれます。 自分は MySQL しか知らないので、以下は MySQL での例です。 インストール % gem install sequel % gem install ruby-mysql 接続 DB = Sequel.connect('mysql://user:password@hostname:port/dbname') # または DB = Sequel.mysql('dbname', :host=>'hostname', :user=>'user', :password=>'password', :port=>'port') 上の例では定
MySQL Performance Blogの翻訳。Perconaのサポートエンジニアである筆者が、InnoDBのパフォーマンスチューニングの基礎について、ハードウェアやOSの選定からパラメータの推奨値まで解説する。 最近、2007年にPeter Zaitevが書いた「InnoDBパフォーマンス最適化の基礎」という記事を見つけた。これは素晴らしい記事で、読んでいると、MySQLとPercona Serversそして今日利用可能な全ての基盤技術に関して、6年近くの間に何が変わってきたのかを見直してみたいと思わせるものだ。 本当にたくさんのことが変わったものだ!この記事では、InnoDBの使用に効果的なパラメータの多くに、特にパフォーマンスの観点から焦点を当てる。私はサポートエンジニアで、Percona SupportではInnoDBパラメータの適切なサイズに関する質問がたくさん寄せられている
Wikipedia の本文データは、XML形式で公開されています。 (詳しい内容は、Wikipediaのダウンロードできるデータファイル一覧 | mwSoft が参考になります) これをデータベースに投入する手順として、xml2sqlを使う方法がよく紹介されていますが、Wikimedia では「これを使ったやり方は推奨しない」と明記されています。 かといって、importDump.php を使うには PHP 環境を用意しなくていけません。 なので、Java で動く MWDumper を使って jawiki-latest-pages-articles.xml.bz2 (Wikipedia の本文データ)を投入してみました。 ダウンロード データベース定義 (tables.sql) Wikipedia の本文データ (jawiki-latest-pages-articles.xml.bz2)
April 4, 2013 Twitterの過去ログが落とせるようになったので SQLに学ぶには丁度いいや。ということで カジュアルにOSX上でhomebrewを使ってMySQLに入れてみました。 MySQL ver.5.6 (homebrew install) OS / OSX 10.8.3 なにはともあれアーカイブをダウンロード Twitterの個人設定っぽいところから ポチポチするとダウンロードリンクが貼られたメールが送られてくるので ポチポチしてtweets.zipをダウンロード。 tweets.csvを探す tweets.zipを解凍すると、中身がこんな感じに出てきて index.htmlをブラウザで開くと、過去のツウィートが見れたりします。 時間泥棒なのでおすすめしません そして、tweets.csvが目的のファイルで、中身を開くと "tweet_id","in_reply_t
平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識
斎藤です。こんにちは。 Chef の話題がアツくなっている今日この頃、みなさまいかがお過ごしでしょうか?Chefの解説本も出つつある今日この頃ではありますが、プログラミングそのものに慣れないうちはそれさえ読むのもちょっと大変かもしれません。そこで今回は、 Chef のレシピ+ライブラリを用いて、MySQLの設定の自動化を試します。いわゆる「写経」から始めてみて、少しずつ「手動」からプログラムを通じた「自動化」にチャレンジしてみましょう。 ※Chef 11.04.0, knife-solo 0.2.0, Ruby 1.9.3p327, CentOS 6.3 で検証しています。 今回のお題 MySQLサーバをインストールしてみます。ITインフラを構築・運用している方ならご存知かと思いますが、MySQLはインストールだけでなくmy.cnfの設定までが作業です。その際にinnodb_buffer_
2012年7月1日のうるう秒のあとに、MySQLやJavaなどのCPU使用率が高騰する事象が報告されています。 CPU %user %nice %system %iowait %steal %idle 08時30分01秒 all 0.02 0.00 0.02 0.04 0.00 99.91 08時40分01秒 all 0.02 0.00 0.02 0.08 0.00 99.88 08時50分01秒 all 0.02 0.00 0.02 0.03 0.00 99.92 09時00分01秒 all 0.11 0.00 0.13 0.04 0.00 99.72 09時10分01秒 all 23.02 0.00 29.09 0.11 0.00 47.78 09時20分01秒 all 23.11 0.00 29.08 0.06 0.00 47.75 09時30分01秒 all 22.85 0.00
というわけで、Oracle OpenWorld Unconferenceに参加して発表をしてきました。直前までデータ取りをしていてやはり睡眠不足だったのですが、とても楽しかったです。JPOUGのみなさま、日本オラクルのみなさま、当日お越しいただいたみなさま、どうもありがとうございました。 御礼。大盛り上がりの!OTN Unconference powered by JPOUG | oracletech.jp 技術者の憩いの場「OTNラウンジ」で体験したくつろぎと交流のひととき――Oracle OpenWorld Tokyo 2012レポート | oracletech.jp Oracle Database経験者がMySQLの設計思想を知っていろいろ考える会 私のセッションでは、Oracle Database、MySQLそれぞれに対してコネクションプール、およびパラメータのバインド機構が性能に
例えば次のようなテーブルがあって、 CREATE TABLE testtable ( id INTEGER NOT NULL, title VARCHAR(10) NOT NULL, body TEXT NOT NULL, created TIMESTAMP NOT NULL, PRIMARY KEY (id) ); 普通にSELECTするとカラムが横並びで値が表示されます。ここではMySQLの例。 mysql> INSERT INTO testtable (id, title, body, created) VALUES (1, 'test', 'hello hello', CURRENT_TIMESTAMP); mysql> SELECT * FROM testtable WHERE id = 1; +----+-------+-------------+---------------
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
MySQL Query Browserというものがあります。Windowsだと「Common SQL Environment」とかあったりするんですが、ことLinuxだと、GUIツールがあまり無いので。。 Ubuntu 9.10では簡単にインストールできます。 sudo aptitude install mysql-query-browser なお、他の環境についてはMySQL公式でインストール手順を教えてくれます。英語、ですけど。 諸機能 「アプリケーション」>「プログラミング」に「MySQL Query Browser」が登録されます。 接続後の画面です。 基本的に、テーブルを上のSQL入力フォームにドラッグ&ドロップすればいいです。 図解するとこうです!! わかりますね!!! SQLは「ctrl+Enter」で実行できます。 なお、テーブルジョインをしたい際などは、四角い所の下の方に
以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く