タグ

mysqlに関するzetamattaのブックマーク (10)

  • レプリケーションを使わないMySQLの冗長化

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、DBMSチームの三谷です。 ヤフーでは多くのサービスでMySQLを利用しています。MySQLはヤフーを支える重要な技術の1つです。 私のチームではヤフーのさまざまなサービスのデータベースを集約して管理・運用しています。 集約することでコストの削減やノウハウの蓄積といった効果を生み出しています。 今回はこの集約環境の冗長化方法についてご紹介します。 集約環境の構成 集約環境ではマスターの冗長化にレプリケーションを利用せず、エンタープライズ向けの共有ストレージを利用したアクティブ・パッシブ型のHA構成を採用しています。 データファイルを共有ストレージに置き、どのマスターサーバーからでも同じデータに対してアクセスできるように

    レプリケーションを使わないMySQLの冗長化
    zetamatta
    zetamatta 2012/11/22
    いわゆる共有ストレージを使ったH/A構成で特に新規性は見当たらないが…枯れた技術で確実に構築しているということかな。Oracle Clusterware が無償というのは驚き
  • PythonでWeb開発入門 みんなのPython Webアプリ編 HTML版(無料) | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記

    みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー 一部読者から高い評価をいただき,絶版となりながら中古市場でプレミア価格がついていた拙著「みんなのPython Webアプリ編」のHTML版をお送りします。Pythonを使って,Webアプリを開発するための方法を,基的な事柄から積み重ね式に解説した書籍をHTMLにしたのがコンテンツです。 編集部のご厚意で作ってもらった配布用PDFをベースに作っています(PDF作成だけでなく,出版契約の解除など必要な手続きを快く受けて頂いた担当様にはとても感謝しております)。構成などは著書をベースにしていますが,HTML化する過程で少し手直ししてあります。特にPython 2.7で動かないサンプルコー

  • DB設計時のサイズ見積もり - よねのはてな

    ここのところ、javaccとawsに魅了されている米林です。 よく使うDB(Oracle/MySQL/PostgreSQL/SQLServer)における設計時のサイズ見積もりで使うサイトの備忘録。 あとは、OracleからのPython情報。 Oracle Oracle 物理設計 http://www.oracle.com/technology/global/jp/columns/skillup/oracle9i/index.html 領域サイズ見積もり http://otn.oracle.co.jp/document/estimate/index.html OTNにログインする必要ありますがオンラインで見積もりが出来ます。 アカウント持っていない人は、この見積もりツールを使う目的でアカウントを作ってみてはいかがでしょうか。 OLTP系とDWH系においてブロックサイズを考慮し、DWH系はブ

    DB設計時のサイズ見積もり - よねのはてな
    zetamatta
    zetamatta 2012/01/11
    Oracle、MySQL、PostgreSQL、SQL Server の DB 見積り関係のリンク等。例は Python で
  • MySQL初心者入門講座

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

    MySQL初心者入門講座
    zetamatta
    zetamatta 2011/05/23
    わたしのような初心者には、ありがたい。基本的なところが、だいたい載ってる。
  • x.com

    x.com
    zetamatta
    zetamatta 2011/05/15
    yum upgrate だけで、CentOS 5.5→5.6 へUpできるのか。あとはLAMPの為にいろいろレポジトリを追加しなくちゃいけないのね
  • MySQLの"UTF-8"にご用心 - yanok.net

    拙著『プログラマのための文字コード技術入門』にも一言だけ書いたのですが、オープンソースのデータベース管理システムとして有名なMySQLのバージョン5.0とか5.1とかは、UTF-8として3バイトまでしか対応していません。 これは今どき考えられないくらい古い仕様です。3バイトのUTF-8というのは、Unicodeの基多言語面(BMP) という、16ビット固定で世界中の文字を符号化するんだと(誤って)言い張っていた、古き良き時代のUnicodeの範囲しか扱えません。 MySQLの5.5.3というバージョンではようやく4バイトのUTF-8への対応が図られたようです。5.5.3の変更点を記したページに記されています。 これを使えば、魚の名前の𩸽(ほっけ、U+29E3D)だとか、偏旁の𧾷(足偏、U+27FB7)だとか、あるいは日の地名として𣖔木作(ほうのきざく、福島県)の「𣖔」(U+23

    zetamatta
    zetamatta 2010/06/04
    バージョン5.0,5.1などは UTF-8 として3バイトまでしか対応していない。4バイト対応になったのは 5.5.3 より。ただし文字コードの指定として来の "utf8" ではなく"utf8mb4"を使う。PostgreSQL は既に対応済み
  • Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン

    Webサービスでは、世界中からのトラフィックを捌く必要があるため、いくらチューニングしようとも一台のRDBMSでは捌ききることが出来ないのが常だ。MySQLは最初からマスター・スレーブ型のレプリケーション機能が搭載されており、スレーブをたくさんぶら下げることによって参照の負荷をスレーブに割り振るというスケールアウトによってその問題に対処してきた。スレーブによるスケールアウトは、参照(=PV)が多いWebサイトと非常に相性が良く、幾多のWebサイトにおいて実績を作ってきているし、まだまだ利用されている。 しかしながら、サイトのトラフィックが劇的に増加してくるようになると、レプリケーションによる負荷分散では追いつかなくなってきた。そこで人々がとった選択肢は、memcachedを利用することである。memcachedはインメモリ型の高速なKVSであり、参照・更新性能はMySQLより格段に高い。M

    Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン
    zetamatta
    zetamatta 2010/05/12
    MySQL のストレージエンジン SPIDER の紹介。複数のDBサーバをつないで、うまくスケールできるらしい
  • 大きめのテーブルにカラムやインデックスを追加する際の注意 - LukeSilvia’s diary

    先日大きめ(といっても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時間かかる 次のカラム追加に対す

    大きめのテーブルにカラムやインデックスを追加する際の注意 - LukeSilvia’s diary
    zetamatta
    zetamatta 2009/11/02
    「key_buffer_size」の数字を十分確保しておかないと、まったく進まなくなってしまう
  • ALTER TABLEを上手に使いこなそう。

    テーブル定義を変更したい。インデックスが壊れてしまったので再作成したい。そんな場合はALTER TABLEを使う。ALTER TABLEはテーブル定義を変更するお馴染みのコマンドであるが、その挙動は意外と知られていない。(エキスパートとおぼしき方々からも度々質問を受ける。)そんなわけで、今日はALTER TABLEについて解説しようと思う。 まず結論から言うと、なんとMySQLのALTER TABLEはテーブルのデータを全てコピーし直すのである。なんて無駄なことを!?と思うかも知れないが、テーブル定義(スキーマ)の変更を動的に行うには、ストレージエンジンによるサポートが必要であり、動的なスキーマ変更をサポートしているストレージエンジンはまだ少ないのである。(動的スキーマ変更をサポートしているのはMySQL Clusterぐらいだ。しかも追加だけ。)デフォルトで利用出来るMyISAMはInn

    ALTER TABLEを上手に使いこなそう。
    zetamatta
    zetamatta 2009/05/11
    MySQL の ALTER TABLE はテーブルのデータを全てコピーする。動的にスキーマ変更を行うにはストレージエンジンのサポートが必要だが、まだ少ない。
  • MySQL テーブルのcreate文をテーブルから生成する方法

    MySQLのデータベースのテーブルからcreate文を生成する方法について紹介します。 テーブルからcreate文を生成するには、SHOWを使います。 SHOW CREATE TABLE `users`\G このようなテーブルがあったときの例を示します。 mysql> desc users; +-------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YE

    zetamatta
    zetamatta 2008/10/09
    『SHOW CREATE TABLE `users`\G』
  • 1