タグ

MySQLとDBに関するlockcoleのブックマーク (28)

  • MySQLのデータをシフトJISからUTF-8に変換した際の記録 - sanonosa システム管理コラム集

    今回のエントリーは、先日Shift JISで作っていたデータを多言語対応にすべくUNICODEに変換しようとしたとき苦労した際の記録です。 今回対象としたのは、MySQLからdumpした100MB近くあるデータです。 【一通りの手順】 まずMySQLからデータをdumpします。 % mysqldump [database name] > dump.sql 次にdump.sqlをmoreしてみると「DEFAULT CHARSET=sjis」という記述があるのでこれをutf8に変更します。 % perl -p -w -e 's/sjis/utf8/g' dump.sql > dump2.sql ただいくらDEFAULT CHARSETをutf8に変えても実際のデータがシフトJISなので、データ自体もUTF-8に変えます。 % iconv -c -f shift_jis -t utf-8 dum

    MySQLのデータをシフトJISからUTF-8に変換した際の記録 - sanonosa システム管理コラム集
    lockcole
    lockcole 2007/09/03
    iconvコマンドに-cオプション(無効な文字を無視して無視して続行することができる)をつけて,文字化けするところは無視しつつもShift_JIS to UTF8変換を行う。参考になった。
  • Scaling with MySQL replication

    To deal with Drupal's growth, we're adding a second database server to drupal.org which is useful for at least two reasons. First, we'll be able to handle more SQL queries as we can distribute them between multiple database servers (load balancing). Secondly, this new server can act as a "hot spare" that can immediately take over if the other database server fails (high availability / fail-over).

    Scaling with MySQL replication
    lockcole
    lockcole 2007/07/26
    DBレプリケーションなどの負荷分散技術の取り扱いについて。Drupal意外の主要なCMS/Blog/Wikiのやり方と,Drupal 6でサポートされる機能について。
  • MySQLノウハウ

    いろいろなからメモってきたメモのメモ。出典を書いておくのを忘れた。思い出し次第補完するかも。 deleteのコストは高いので、無効化を示すフィールドを作ってupdateすべき slow query logに要注意 多くのエントリでほとんどのフィールドが同じ値を持つ場合はインデックスの効果が小さい →複合インデックスの効果が大きい 複合インデックスは指定の順番が大切。AとBという指定の場合、A単独でもインデックスの効果がある。逆は真でない。 インデックスが使われる場面は フィールド値を定数と比較するとき (where name = 'hogehoge') フィールド値でJOINするとき (where a.name = b.name) フィールド値の範囲を求めるとき (<,>,between) LIKE句が文字列から始まるとき (where name like 'hoge%') min(),

    lockcole
    lockcole 2007/07/25
    ハイパフォーマンスMySQL系の情報。ハードウェアの優先順位は RAM > HDD > CPU > ネットワーク。unionも重複行を削除する処理を行うので処理が遅くなる。union allを使うように。
  • サービス終了のお知らせ

    平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 件に関するお問い合わせはこちらよりお願いいたします。

    lockcole
    lockcole 2007/07/24
    前処理をどのように行うか。INSERT SELECTを使った一時テーブル作成のやりかた,さらにそれを負荷分散するために別サーバへ送るFEDERATEDエンジンとの併用。そういう使い方ができるのか。
  • spiritlooseのはてなダイアリー - MySQL Proxyがおもしろそう

    http://forge.mysql.com/wiki/MySQL_Proxy ほー・・・なかなかおもしろそう。 mod_proxy_balancer and mod_rewrite for MySQLみたいなかんじかなぁ。 といっても、tritonn みたいに MySQL に組み込むんじゃなくって、別プロダクトのサーバ。 load balancing fail over あたりが mod_proxy_balancer っぽくて Query interception Query rewriting Injecting queries あたりが mod_rewrite っぽい。 mod_rewrite みたいに挙動を選ぶ(PとかRとかPTとか)んじゃなくて、コアの挙動はなくて、全部 RewriteMap prg:/path/to/script みたいなイメージっぽい。 「--proxy-lu

    spiritlooseのはてなダイアリー - MySQL Proxyがおもしろそう
    lockcole
    lockcole 2007/07/12
    MySQL Proxy。「mod_proxy_balancer and mod_rewrite for MySQLみたいなかんじかなぁ。」とのこと。なんか使い道あるかも。
  • 更新があるシステムにはInnoDBを選ぼう。MyISAMを選択するならそれなりの理由が必要。それにInnoDBのパフォーマンスはそんなに悪くないよ。 || パフォーマンスチューニングBlog: インターオフ

    AWSアドバンスドコンサルティングパートナーの一員として活動する株式会社スタイルズが、AWS導入、移行、開発、セキュリティ、運用保守など、すべてのご相談に乗らせていただきます。 AWSを導入したいが何から始めたらいいかわからない 既存のベンダーが新技術に弱く、良い提案がもらえない クラウドの導入にセキュリティの不安がある AWSをとりあえず導入したが、さらに活用していきたい 社内にAWSの知見を持っている人がいない AWSならではのシステム開発を詳しく知りたい

    更新があるシステムにはInnoDBを選ぼう。MyISAMを選択するならそれなりの理由が必要。それにInnoDBのパフォーマンスはそんなに悪くないよ。 || パフォーマンスチューニングBlog: インターオフ
    lockcole
    lockcole 2007/07/06
    InnoDBが速い。MyISAMを選択するのは,完全検索Onlyの場合か,ログ出力系のテーブルのみ。
  • 【レポート】萌え萌えMySQL「MoSQL」とは? | エンタープライズ | マイコミジャーナル

    FLOSSアプリケーションは収束と発散をたえず繰り返している。有益であり、人気があるFLOSSアプリケーションには、リソースが集中し、開発が加速する。一方でソースコードにアクセスしやすいというそのライセンスの特性から、来の開発者や開発チームが想定していなかった変更が加えられ、新たなブランチが形成されていくこともある。FLOSSアプリケーションのおもしろさはこうした発展が世界規模で実施されている点にあるわけだが、ここではそうしたアプリケーションのひとつとして「MoSQL」を紹介したい。 MoSQL(もえすきゅーえる)はMySQLデータベースを日語が扱いやすいように改善したアプリケーション。MoSQLのサイトによると、次のような点が変更されているようだ。 デフォルトの文字コードはUTF-8 文字コードの範囲外バイト列も喪失することなくそのまま格納 クライアントライブラリにおいて環境変数で文

    lockcole
    lockcole 2007/06/27
    期待のカスタマイズ版MySQL「MoSQL」を紹介している記事。UTF-8,Senna組み込み,日本語エラーメッセージあたりがポイント。パッチは5.0.xx系向けと5.1.xx系向けの2種類とのこと。
  • 「MySQL,PostgreSQLとFirebirdの性能をユーザー会メンバーが徹底比較,判明...

    「更新とJOINが多ければMySQL,シンプルなSELECT主体ならPostgreSQLが向いている。ストアド・プロシージャでシングル・コネクションならFirebirdは非常に速い」---6月23日に開催された「オープンソースカンファレンス2007.DB(OSC2007.DB)」で,各オープンソースDBのコミュニティのメンバーによる性能比較が披露され,従来の一般的なイメージとは異なる“意外な結果”が明らかにされた。 オープンソースカンファレンスは,オープンソース関連コミュニティが主催するイベントで,OSC2007.DBはデータベース関連のコミュニティが集まったイベントである。性能比較セッションを担当したのは,日MySQLユーザ会の堤井泰志氏,日PostgreSQLユーザ会の片岡裕生氏,Firebird日ユーザー会の木村明治氏。「あくまでボランティアによる性能比較であって,最速,最新マ

    「MySQL,PostgreSQLとFirebirdの性能をユーザー会メンバーが徹底比較,判明...
    lockcole
    lockcole 2007/06/25
    MySQL(InnoDB)のJOINは遅くなくて更新が頻繁なDBに向く,PostgreSQLは単純なSELECTが中心の場合に高性能,それからFirebirdは前2者に比べて高負荷には耐えられない代わりに,全般的に高速とのこと。
  • ウノウラボ Unoh Labs: MySQL5からのインデックス結合で1テーブル複数インデックスを使う

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: MySQL5からのインデックス結合で1テーブル複数インデックスを使う
    lockcole
    lockcole 2007/06/19
    MySQL5から導入されたインデックス結合を試してみて,MySQL4と比較してどのようにインデックスが使われるようになったかを検証。一テーブル一インデックス問題を解消する一手。使い方を知っておいた方がよさそう。
  • Open Tech Press | MySQLデータのバックアップ方法

    2007年5月31日10:53 Tom-Adelstein、Bill-Lubanovic(2007年5月29日(火)) ファイルやディレクトリのバックアップは比較的簡単だが、データベースのバックアップとなると、いくつか特別な工夫を施す必要がある。ここではMySQLを取り上げているが、同じ原理はPostgreSQLやその他のリレーショナルデータベースにもあてはまる。 稿は、最近O’Reillyから出版された書籍『 Linux System Administration 』の抜粋。 MySQLサーバを休みなく稼働させ続ける必要がないなら、以下に示すような圧縮なしのオフラインバックアップ手法が手っとり早い。 MySQLサーバを停止させる。 # /etc/init.d/mysqld stop MySQLのデータファイルおよびディレクトリをコピーする。例えば、MySQLのデータディレクトリ/var

    Open Tech Press | MySQLデータのバックアップ方法
    lockcole
    lockcole 2007/06/07
    コマンドラインで使うMySQLのデータバックアップ手法をコマンド別に紹介。それぞれの使い道についても説明されてる。mysqlhotcopy, mysqlsnapshot, replication, そしてmysqldump。
  • 「ちょっと待て」 真・MySQLのクエリを最適化する10のTips:CodeZine

    Jaslabs: High performance phpで紹介された「MySQLのクエリを最適化する10のTips」に対して、反論している人がいる。ブログ「20bits」のJesse氏だ。彼は「10 Tips for Optimizing MySQL Queries (That don’t suck)」というエントリーで、Jaslabs氏の記事は適切でないとしている。 Jesse氏の経験によれば、SQL最適化で最も重要なことはSQLDBの基をしっかりと理解することであり、60%がこれで解決するという。残り35%はDBやクエリの特殊な性質に対する対処であり、最後の5%で発想の転換などを求められる。Jaslabs氏はここにばかり力を入れており、それはまったくもって時間の無駄だと述べている(Jesse氏は「SQL_SMALL_RESULTなんて、生まれてこの方使ったことすらない」とまで言

    lockcole
    lockcole 2007/05/31
    以前の10TipsがMySQLの細かいところを見ていた最適化手法であるのに比べて,こちらはより包括的・一般的な話。どっちが良い・悪いの話じゃなくて,開発の進行にあわせて順序よく適用することが大事ってことかな。
  • MySQLのクエリを最適化する10のTips - PHPプロ!ニュース

    平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 件に関するお問い合わせはこちらよりお願いいたします。

    lockcole
    lockcole 2007/04/12
    テーブルの最適化,頻繁に更新されるMyISAMテーブルで可変長型を使わない,INSERT LOW PRIORITYの設定,データ型の同期,など。
  • MySQL FULLTEXT Ngram : LIKE検索より数十倍高速な、お手軽 日本語全文検索 について|blog|たたみラボ

    tatamilab.jp

    lockcole
    lockcole 2007/04/07
    n-gramを作ってLIKEよりも高速だけど精度は十分でない(=割り切って使う)全文検索を実現するためのやりかた。それから性能の評価。
  • 現場指向のレプリケーション詳説

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

    lockcole
    lockcole 2007/01/31
    レプリケーションの仕組みについてかなり詳しく突っ込んだ解説をしてる。元記事はWEB+DB PRESS Vol.22に掲載されたもの。レプリケーションでできること(高可用,参照負荷分散ほか),できないこと(更新負荷分散ほか)。
  • KLab

    ご指定のページが見つかりませんでした URLの変更、もしくはページが削除された可能性があります。 お手数ですが、以下のリンクから目的のページをお探しください。

    KLab
    lockcole
    lockcole 2007/01/08
    「WEB+DB PRESS Vol.34」に掲載された記事のWeb版。MyISAM,InnoDBに対する変更点と,新しいストレージエンジンについて。InnoDB+ReiserFSの問題についても。あとハードウェアRAIDのwrite cacheがパフォーマンスを上げてくれるらしい。
  • mysql を高速化したいときに読むメモ (TechKnowledge)

    給料の振込口座として三井住友銀行に口座を持っています。自動支払いサービスを使用して光熱費等の公共料金の支払いをしていますが、先日それらの内の一つを失念してたことに気づきました。口座を確認した時にはすでに引き落としが完了していたため、手元の資金が心細くなった状態で数日を過ごさなければなりません。三井住友銀行で即日キャッシングが可能であれば、是非利用したいのですが。 運が良ければ、三井住友銀行の即日キャッシングは可能 三井住友銀行の特徴はまずクレジットカード会社との連携したサービスが魅力的なことがあげられます。キャッシングでは銀行カードローンですから、何より安い金利が大きい利点になります。概ね銀行系の審査に必要な時間は長くなるようですが、三井住友銀行ではカード発行が当日に行なってくれます。 三井住友銀行は即日キャッシングができるかと言うと微妙なことになります。申込から審査結果の連絡までは、土日

    lockcole
    lockcole 2006/11/28
    MySQLの設定に関するチューニング指南。メモリキャッシュに関する項目が中心。query_cacheの幅32M-512Mって広すぎな気もしないでもない。
  • MySQL 文字化け問題を本気で直す

    mysql> status; -------------- mysql Ver 14.7 Distrib 4.1.20, for redhat-linux-gnu (i386) using readline 4.3 Connection id: 36 Current database: staff2006 Current user: maiha@localhost SSL: Not in use Current pager: lv Using outfile: '' Using delimiter: ; Server version: 4.1.20 Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: latin1 Db characterset: latin1 Client char

    lockcole
    lockcole 2006/11/01
    4.1以降で発生する文字化け問題をうやむやにしないで本気で解決するための覚え書き。UTF8を正しく設定するために。
  • 【ハウツー】これは便利! MySQL/PostgreSQLにも対応 - RDBMS操作ツール\"Execute Query\" (1) いろいろRDBMS管理ツール (MYCOMジャーナル)

    オープンソースのRerational Database Management Ssystem(RDBMS)の雄といえばMySQLとPostgreSQL。アプリケーションに組み込んで使うタイプのRDBMSまで広げればApache Derby、H2、HSQLDBなども人気があるが、汎用的に幅広く使われているFLOSS RDBMSとなると、やはりMySQLとPostgreSQLの2つとなるだろう。 この2つのRDBMSに共通した特徴に、周辺ツールが充実しているということがある。10年まえであれば管理にCUIツールを使うことに違和感はなかったが、現在では優れたGUIツールがあり、広く利用されている。たとえばMySQLにはMySQL Administratorが、PostgreSQLにはpgAdmin IIIが用意されている。 図1.1 MySQL管理ツール – MySQL Administrato

    lockcole
    lockcole 2006/09/23
    RDBMS管理ツールExecute Queryの紹介。
  • naoyaのはてなダイアリー - コネクションプーリングの話

    かなりながーいエントリになる予定なので,結論だけ最初に書くとこんな感じ. この話題については自分も あとで書く と言って書いてなかったので書いてみますよ。2006年の下期にもなってコネクションプーリングかよというツッコミもありそうですが、あとで書くといったら書くの。あとで読むといったら読む。 普通「コネクションプーリング」と言ったら、主に二つの役割があると思います。話を簡単にするためにウェブアプリケーションに限定して言及します。 ウェブアプリケーションから DB への接続を開けっ放しにして、接続に必要とされるオーバーヘッドをカットして双方の負荷を下げる。 ウェブアプリケーションと DB への接続を「使いまわす」ことで、同時接続数を節約する。 というもの。 mod_perlDB と接続維持するとコネクション数増えて云々という話は主に前者のみについての話になります。Apache::DB

    naoyaのはてなダイアリー - コネクションプーリングの話
    lockcole
    lockcole 2006/09/13
    LL界のコネクションプーリング=単なる永続化の話でしょ,ってことで議論を展開。
  • MySQLシステム変数

    MySQLには、様々なシステム変数が存在します。 これらは、my.cnfなどの設定ファイルやMySQLの起動時オプションで 制御することが可能です。 システム変数は、以下のSQL文で参照できます。 SHOW VARIABLES; SHOW VARIABLES like 'charset%'; また、以下のSQL文で更新できます。 SET GLOBAL sort_buffer_size = 10 * 1024 * 1024; SET SESSION sort_buffer_size = 10 * 1024 * 1024; システム変数には、サーバ共通の値と セッション(接続)共通の値とがあります。 前者を変更すると、その後開かれる全てのセッションに影響があります。 後者を変更すると、現在のセッションでのみ影響があります。 以下、MySQL5.0.16に対応したシステム変数一覧です。 自動イン

    lockcole
    lockcole 2006/08/05
    日本語のシステム変数リファレンス。使用事例も挙げられていて参考になる。インクリメントの値を変えたりできるとは。