タグ

mysqlに関するmakura_aのブックマーク (21)

  • MySQL管理者最速マスター

    巷ではプログラミング言語の最速マスターが流行ってるので、MySQLも参戦。ただし管理者向け。 まずはダウンロードとインストールダウンロードサイト http://dev.mysql.com/downloads/ バイナリにはインストールパッケージ(Windows=MSI、Mac=DMG、Linux=RPMとか)とアーカイブ(*NIX=tar.gz/Windows=zip)があるけど、初心者は黙ってパッケージをチョイス。インストールはウィザードに従うだけ。英語だけどそこはガマン! パッケージリポジトリがあるOSを使ってるなら、リポジトリからインストールするのもありだ。例えば、 shell> sudo yum install mysqlとか shell$gt; sudo apt-get install mysqlとか。これは楽チンだけどMySQLのバージョンがちょっと古くなるので注意。 もちろん

    MySQL管理者最速マスター
  • DB設計の神ツール「ERMaster」なら、ここまでできる

    DB設計の神ツール「ERMaster」なら、ここまでできる:ユカイ、ツーカイ、カイハツ環境!(11)(1/3 ページ) 無料のEclipseプラグイン「ERMaster」とは データベースのテーブル設計を行うときに皆さんは、どのようにしているでしょうか? いくつかの無料で利用できるツールが提供されているので、筆者はそれらを利用していましたが、最近「ERMaster」と呼ばれるEclipseプラグインの存在を知りました。 ERMasterは、ほかのツールに比べ、直感的で分かりやすいUI(ユーザーインターフェイス)に、カスタマイズ可能な、Excelで出力できるテーブル定義書、辞書機能など痒いところに手が届くERモデリングのツールです。稿では、このERMasterについてご紹介します。 ERMasterの主な特徴、8つ ERMasterには、主に次のような特徴があります。 【1】直感的で使いや

    DB設計の神ツール「ERMaster」なら、ここまでできる
  • http://www.mysql.gr.jp/Manual/mysql-3.21.31/manual_Performance.html

  • oinume journal

    大規模なコードベースでリファクタリングを省エネ化するためにcodemodを最近調べていて、軽く試行錯誤したのでそのメモ。 やりたいこと 例えば以下のようなTable Driven TestなコードをBEFOREからAFTERに書き換えたい。コード量が多いため人間がやるのは現実的ではなく、codemodで機械的に書き換えたい。 BEFORE package main import ( "slices" "testing" ) func TestContains(t *testing.T) { type args struct { ss []string s string } tests := []struct { name string args args want bool }{ { name: "empty: false", args: args{[]string{}, ""}, wan

    oinume journal
  • MySQL レプリケーション基礎 - shibainu55日記

    今日は、MySQLのレプリケーションのお話。バージョンは5.0を前提として説明。 MySQLにおけるレプリケーションは更新情報を記録したバイナリログ(binlog)をベースとしたアーキテクチャ。マスターでの更新情報をバイナリログとしてスレーブに転送、これをSQLに変換しスレーブで実行しデータ同期を行う。Oracle Data GuardのLogicalスタンバイによく似ている。 基概念図を以下に示す。 特徴 複数のスレーブを用意することで、参照系クエリの負荷分散が可能 マルチマスター構成の場合には更新系クエリの負荷分散も可能 ただし、この場合にはアプリの扱うデータに依存し実現可否が分かれる。 マルチマスター扱いとするオブジェクトを限定するなど、論理設計でも考慮が必要 マスタのバックアップとしてスレーブを切り離し、サービス無停止のままバックアップが可能 この場合、スレーブを停止しコールドバ

    MySQL レプリケーション基礎 - shibainu55日記
  • 米大統領選でMySQLはどのように使われたのか

    の衆議院選挙が間近に迫っていますが、昨年米国で行われた大統領選において、オバマ陣営がIT技術を駆使したという話はよく知られています。MySQLももちろん使われていました。今年4月にサンタクララで開催されたMySQL Conference & Expo 2009というイベントでは、最終日のキーノートにおいて、Obama Tech Teamの方々より、大統領選においてMySQLがいかに使われたかという発表が行われました。 当はカンファレンス終了後にすぐちゃんとしたレポートを書いて公開する予定だったのですが、その週に起こった草なぎ剛逮捕とか、そのほかの出来事にすっかり気を取られて放置していました。Blogを始めた契機にTwitterの中で興味を持っている方がいるかどうか聞いたところ、そこそこの方が興味を示したので、ここで簡単にまとめたメモを公開することにします。 ●チームメンバー 発表者は

  • MySQLレプリケーション備忘録 master.infoとrelay-log.info | Livingdeadの日記 | スラド

    レプリケーションに際してスレーブ側では二つのスレッドが起動する。 これは SHOW PROCESSLIST\G で確認することができる。 マスタからのバイナリログを読み込むためのスレッドと リレーログを書き出すためのスレッドである。 前者は /var/lib/mysql/master.info に情報を保存する。 これにはマスタに接続するために必要なアカウント情報も記録されている。 パスワードも平文のまま記録されているのでパーミッションには注意が必要である。 後者は /var/lib/mysql/relay-log.info に情報を保存する。 ここにはそのリレーログにはマスタのバイナリログのどこまでが記録されているか、 またリレーログのどこまでを実行してスレーブのデータベースに反映させたかが記録されている。 両スレッドともに起動時にはこれらのファイルに記録されている情報をもとに レプリケ

  • MySQLのレプリケーションを試してみたので注意点など - (゚∀゚)o彡 sasata299's blog

    2008年08月31日18:39 MySQL MySQLのレプリケーションを試してみたので注意点など 今回はMySQLのレプリケーションをやってみましたー。レプリケーションの仕組みはこんな感じ(*・ω・)ノ 1) マスタがバイナリログを出力。 2) スレーブがバイナリログを受け取り、リレーログとして保存。 3) スレーブがリレーログからクエリを実行。 ※バイナリログには更新系のクエリのみが記録されます。 ※リレーログはバイナリログと内容は同じですが、必要がなくなると自動的に削除されていく点が異なります。 とりあえずやってみようと思って、マスタ1台、スレープ2台の構成を作ってみましたヾ(o゚ω゚o)ノ゙ まず、MySQLをインストールして設定ファイル3種類、それぞれ以下のように設定します。 マスタのmy.cnf [mysqld] server-id=1 user=mysql port=330

  • PROCEDURE ANALYSE() – variable.jp [データベース,パフォーマンス,運用]

  • 漢(オトコ)のコンピュータ道

    ゴールデンウィークはいかがお過ごしされただろうか。今年は天気も良く、行楽日和が続いたように思う。 さて、先日MySQL 8.0が正式にリリースされた。少し時間が経ってしまったが、今回はMySQL 8.0の新機能について紹介したい。コミュニティ版のダウンロードはこちらから可能だ。 ひとつ前の正式バージョンはMySQL 5.7だったのだが、MySQL 8.0は非常に大きなリファクタリングが含まれており、5.x台のバージョン番号を捨て去ろうという話があった。そこで、次のメジャーバージョンは最初の桁を増やすということになったのだが、MySQL 6.0は過去に既に存在し、買収などの騒ぎで開発が頓挫してしまった経緯がある。7.xはMySQL NDB Clusterと被っている。というわけで、5.7の7の部分の次という意味合いもあって、8.0というバージョン番号を引っさげ、満を持しての登場となった。その

    漢(オトコ)のコンピュータ道
  • MySQL のユーザー管理 - WebOS Goodies

    それでは、実際のユーザー管理の方法をご紹介していきましょう。前述のとおり、以下でご紹介しているコマンドは全て mysqlMySQL サーバーに接続した状態で実行してください。接続するには以下のように mysql コマンドを実行します。 mysql -u <ユーザー名> -p 実行後、パスワードを聞いてきますので適切に入力してください。ユーザーは管理権限を持つユーザーである必要があります。 ユーザーの作成 ユーザーの作成には、GRANT ステートメントを使用します。基的な書式は以下のようになります。 GRANT <権限> ON <適用範囲> TO <ユーザー名>[@<ホスト名>] IDENTIFIED BY '<パスワード>'; 権限 ユーザーに与える権限をコンマ区切りで指定します。"ALL" と指定することで全ての権限を付与することができます。 適用範囲 権限の適用範囲を "<デー

  • MyISAMとInnoDBのどちらを使うべきか

    Twitterで話題になってたので簡単にまとめました。 ●MyISAMにしか無い機能を使いたい場合はMyISAMを使うしかない ・全文検索 (TritonnやSphinx) ・GIS ●InnoDBの利点(MyISAMの欠点) ▲障害対応系 ・クラッシュしても再起動するだけでリカバリができる ・クラッシュリカバリにかかる時間はテーブルサイズに比例するようなことはなく、コミット済みのデータは修復できる (巨大なMyISAMテーブルのREPAIRには数日単位で時間がかかることがある) ・オンラインバックアップができる ・INSERTやLOAD DATAなどを実行している途中でCtrl+Cでその更新系SQL文を止めても、テーブルは壊れないし、中途半端な状態で更新されることも無いし、スレーブが止まることも無い ▲性能系 ・行レベルロックなので並列性が高い(MyISAMはテーブルロック)。またSEL

  • Facebookが大規模スケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題

    Facebookが大規模スケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題 全世界で3億人を超える会員を抱え、世界最大のSNSとなったFacebook。同社の巨大なシステムは、3つのデータセンターにある約3万台のサーバと、PHPC++、Memcache、MySQLなどのソフトウェア群によって支えられています(同社のデータセンターの巨大さは、記事「3億のユーザーを抱えるFacebookのデータセンター。移動は自転車、希望は100Gbイーサネット 」を参照)。 同社の技術担当バイスプレジデント Jeff Rothschild氏は、Facebookが実現している大規模なスケーラビリティを、いかにしてこれらのソフトウェアで実現しているのか、10月8日に米カリフォルニア大学サンディエゴ校で行ったセミナー「High Performance at Mas

    Facebookが大規模スケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題
  • MySQLのEXPLAINを徹底解説!!

    以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ

    MySQLのEXPLAINを徹底解説!!
  • MySQLとオープンソースに捧げる毎日:MySQLの管理など - livedoor Blog(ブログ)

    今回も前回に引き続き、ただいま受講中のMySQLトレーニングの実況中継(4日目)。 いつも応援ありがとう! 【参考】 MySQL Certification Study Guide 今日のトレーニングは、MySQLのログ、トランザクション、バックアップ、レプリケーションについて。 実践に役立ちそうな技から、試験ぐらいでしか使わなそうな技まで、気になったものをトレーニングを受けながらリアルタイムに追記していくので、もし今日の分をまとめて見たいあなたは、18時以降にまたどうぞ。 一般クエリーログをオン(デフォルトはオフのまま)にすると、発行されたクエリーを記録できるが、パフォーマンスが10%ほど低下する。 スロークエリーログを使うと、実行の遅いクエリーやインデックスを使用していないクエリーを記録できる。 基的にMyISAMの方がselect、insertなどの動作がInnoDBよりも速い。

    makura_a
    makura_a 2009/10/07
    analyze table optimize table
  • MySQLでランダムにレコードをselectする。パフォーマンス対策3つ。 - mtomizの日記

    例えばMySQLのデータベースからWEBサイト上にランダムに商品情報や広告情報を取得して、10件程度表示させたいとする。単純に、SELECT * FROM table ORDER BY RAND();を使用することが考えられるが、ランダム取得すると全件取得と同じ負荷がかかるので、データ件数が数万件以上あるような場合処理パフォーマンスが問題となる。したがって、SELECT * FROM table ORDER BY RAND() limit 0, 10;として10件ランダムに取得しようとしても全件取得相当の処理パフォーマンスとなり実用的ではない。【対策】1.取得するカラムが少ないのであれば*ではなくselect id,name,price from table order by rand() limit 0,10; などとするとかなり早い2.ランダムに”切り取る”ことができれば10件は連続し

  • 現場指向のレプリケーション詳説

    この文書は、技術評論社刊『WEB+DB PRESS Vol.22』に執筆した記事を技術評論社の 許可を得てWWWで公開しているものです。 このWWW版は校正前の原稿を元にしている点、WWW公開後に必要があれば修正する点で、雑誌版の文章とは異なる部分があります。また、図表も雑誌版とは異なります。 予めご了承ください。 また、この文章が対象しているのはMySQL 4.0系なので、最新のリリース版と比べると説明不足な点などが多々あると思います。 レプリケーションの基をおさえるには、この文書はまだ有益だと思いますが、設定レベルの説明は最新のドキュメントを参照するようにしてください。

  • Tritonnプロジェクト MySQL Sennaによる全文検索 〜

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • Ruby/MySQL

    [English page] Ruby で記述された MySQLRuby API です。MySQL の C API とほぼ同等の機能があります。MySQL/Ruby と ほぼ互換があります。 現在のところ、MySQL 4.1.x では使用できません(mysqld に --old-passwords オプションをつければ使用できるかも)。 黒田 亮 <akuroda at gmail.com> さんが MySQL 4.1.x でも使用できるパッチを作ってくれました。 そのうち取り込むつもりですが、とりあえず置いておきます。 必要なもの Ruby 1.8.2 ライセンス このプログラムは Ruby ライセンスに従います。 ダウンロード ruby-mysql-0.2.6.tar.gz ruby-mysql-0.2.5.tar.gz ruby-mysql-0.2.4.tar.gz ruby-

  • MySQL初心者入門講座

    格的なプログラミングを学びたい場合は Java初心者入門講座 を次のステップとしてご活用ください。 ・Web系のプログラミングを学びたい場合は PHP初心者入門講座 を次のステップとしてご活用ください。 MySQLのデータベースを操作するには、いろんな方法(管理ツール)があります。 操作とは、データベース、テーブル、クエリなどへ対する参照・作成・追加・修正・削除などのことです。 これまでにも当入門講座では、 コマンドプロンプトやAccessを使った方法を紹介してきましたが、 もう一度まとめてみます。 MySQLをパソコンにインストールすると、 Windows付属のコマンドプロンプトから、コマンドラインで操作できるようになります。 これは講座の手順で、MySQLのbinフォルダに環境変数のPATHを通したため、 MySQL関係のプログラムがすぐに実行できるからです。 でもコマンドプロンプ

    MySQL初心者入門講座