This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
■ インデックスとは データベースの世界で、インデックス(索引)とはテーブルに格納されているデータを 高速に取り出す為の仕組みを意味します。 インデックスを適切に使用することによってSQL文の応答時間が劇的に改善 される可能性があります。 インデックスにはB-Treeインデックスをはじめ、ビットマップインデックス、 関数インデックスなどの種類がありますが、ここでは最も一般的に使われ、かつ ほとんどのDBMSでサポートされているB-Treeインデックスについて解説します。 ※ CREATE INDEX文でオプションを指定しない場合は通常B-Treeインデックスが 作成されます。 ■ B-Treeインデックスのしくみ B-Tree(Balanced Tree)インデックスは次のようなツリー状の構造になっています。 ツリーの先頭はヘッダブロックと呼ばれています。ヘッダブロックでは、キー値の 範囲
この章では、MySQL のパフォーマンスを最適化する方法について説明し、例を示します。 最適化には、いくつかのレベルでの構成、チューニング、およびパフォーマンスの測定が含まれます。 業務の役割 (開発者、データベース管理者、または両方の組み合わせ) に応じて、個々の SQL ステートメント、アプリケーション全体、単一のデータベースサーバー、または複数のネットワーク接続されたデータベースサーバーのレベルで最適化できます。 プロアクティブにパフォーマンスを事前に計画する場合や、または問題の発生後に、構成やコードの問題のトラブルシューティングを行う場合があります。 CPU やメモリーの使用を最適化することで、スケーラビリティーを向上し、データベースを低下させず、より多くの負荷を処理させることもできます。
ここまでは単一の列に対して作成するインデックスを前提にお話ししてきました。しかし、インデックスは同一テーブルの複数の列に対してまとめて設定することもできます。検索条件に複数列を指定する場合などは、このようなインデックスを使えばさらに効率よく処理を行うことができます。
_ [ソフトウェア] (いまさら)MyISAMのマルチカラムインデックス構造 MyISAM(というかMySQL)といえばマルチカラムインデックスです(インデックス1つしか使えないしー)。マルチカラムインデックスのメリットと制限については複合インデックスに書いてあって、その構造については インデックス化されたカラムの値を連結することによって生成された値が含まれ、ソート化された配列と見なすことができます と書いてあります。となると多分、 mysql> SHOW CREATE TABLE foo\G *************************** 1. row *************************** Table: foo Create Table: CREATE TABLE `foo` ( `a` int(11) default NULL, `b` int(11) def
MySQLのチューニングは、色々方法がありますが、my.cnfでチューニングを行う場合、大体次の設定でよい。■port 通常3306。セキュリティ面から変更したほうがいい。 ■key_buffer インデックスをバッファに保存する際のメモリサイズ。 MyISAMならOSキャッシュも使うので全メモリの30-40%いれるといいらしい。 増やすと検索速度 up 例)key_buffer=256M ■innodb_buffer_pool_size InnnoDBのバッファのプールサイズ。 InnnoDBはOSキャッシュ使わないので総メモリの70-80%でがんがんいっとけとのこと。 ■table_cache データのキャッシュサイズ。I/O減らすのに有効 数百のテーブルなら1024がベスト。 例)table_cache=256 ■thread_cache スレッドの作成・削除は負荷重いので少なくとも
MySQLのチューニングにおいて非常に重要となるメモリ(バッファ)関連のパラメータについて、 チューニングのポイント DSASのとあるDBサーバ(実メモリ4GB)の実際の設定値 をまとめてみます。 また、必要メモリの総量の計算や限界値を越えてないかチェックしてくれるスクリプトも紹介します。 是非、参考にしてみてください! まず最初に注意点を。 バッファには2つのタイプがあります。 グローバルバッファ スレッドバッファ グローバルバッファはmysqld全体でそのバッファが1つだけ確保されるもので、 これに対し、 スレッドバッファはスレッド(コネクション)ごとに確保されるものです。 チューニングの際にはグローバル/スレッドの違いを意識するようにしましょう。 なぜなら、スレッドバッファに多くのメモリを割り当てると、コネクションが増えたとたんにアッという間にメモリ不足になってしまうからです。 in
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
ローカルの開発環境で使っていたMySQLなんですが、何も考えずデフォルトの設定で使っていたら、mysqldumpした際に、データが文字化けして、ちょっとは待ったのでメモ。 MySQLのバージョンは4.1.20。 文字化けする原因は、mysqldumpがデフォルトでは、文字コードをUTF-8で出力するようになっていて、フィールドの型がUTF-8でない場合は、自動でUTF-8に変換するためのようです。 僕が使っていたDBは文字コードについて特に何も設定していなかったので、デフォルトの文字コードであるlatin1になっていました。 なので、これもmysqldumpするとlain1 -> UTF-8な変換が自動で行われ文字化けしたということのようです。納得。 この自動変換を行わないようにすれば解決するはず。ということで調べてみると、--default-character-setというオプションを使
Original Document revision: 1.02 Original Last update: 2003-05-27 翻訳バージョン: 0.9.5 目次 はじめに 前準備 インストール 単純なDBIスクリプト 問合せ処理 結果セットを返さない問合せ処理 結果セットを返す問合せ処理 クオート、プレースホルダー、パラメータ束縛 メタデータの問い合わせ コードブロックつきのメソッド サーバ接続の補足 エラー処理とデバッグ トランザクションサポート ドライバに特化した機能 その他の便利な機能 参考情報 はじめに Ruby DBI を使うと、いろんな種類のデータベースを同じAPIでもってrubyから アクセスすることができます。これは、Perl DBI と perl の関係と同じです。 この記事では Ruby DBI を使用したRubyスクリプトの書き方を説明します。こ の文書は DB
***** WE'VE MOVED TO GITHUB ***** https://github.com/sqlitebrowser/sqlitebrowser Reason why we moved → http://blog.gluster.org/2013/08/how-far-the-once-mighty-sourceforge-has-fallen/ ***** WE'VE MOVED TO GITHUB ***** DB Browser for SQLite is a light GUI editor for SQLite databases, built on top of Qt. The main goal of the project is to allow non-technical users to create, modify and edit SQLite da
はじめに 別ページでも触れておりますが Microsoft謹製の PHP Driver CTP版が出ておりました。 ニュースソースはこちら。 PHP 5向け、SQL Server との接続ライブラリCTP公開(SQL Server 2005 Native Client前提、Windows 2000 SP4〜Windows Vistaまで) 環境について Microsoft Windows2000 Professional SP4(VirtualPC2004上) Apache2.2.6 php-5.2.4 SQLServer2005 Express SP2 sqlsrv-for-php_1.0.1045_enu.exe Driver組み込み まずは適当なディレクトリで Exeファイルの解凍をします。 ドキュメントファイルと2種類の dllファイルが含まれています。
はじめに SQLが提供する結合演算には、その特徴に応じて内部結合、外部結合、クロス結合などさまざまな名前が与えられています。普通、これらの結合の多くは、異なるテーブルまたはビューを対象として行われます。しかし、SQLは結合が同一のテーブルまたはビューに適用されることを禁止していません。同一のテーブルを対象に行う結合を「自己結合(self join)」と呼びます。自己結合は、使いこなせば非常に便利な技術ですが、動作がイメージしにくいため敬遠されがちです。そこで本稿では、この自己結合の便利さを例題を通して学び、その動作を分かりやすく解説します。 自己結合を理解することは、実務上のテクニックを身につける以外に、もう一つ利点があります。それは、集合指向(set-oriented)というSQLの重要な特徴を理解できることです。オブジェクト指向言語が世界をオブジェクトとして表現するように、SQLは世界
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
この文書は、osCommerceで使用しているデータベースMySQLの基本的な使い方について解説しています。おもにデータベースの管理者よりも、ユーザに向けて書かれています。 はじめに ここでは、MySQLサーバは起動しているものとして説明します。 MySQLの文字について MySQLでは、データベース名やテーブル名の大文字と小文字を区別しています。それ以外は区別しません。 MySQLのフィールド名やテーブル名に使える文字は、英数字と_(アンダーバー)、$、サーバのキャラクタセットにある文字です。 知っておきたいコマンド mysqladmin(データベースの作成・削除や、MySQLサーバの情報を得る) mysqlshow(データベース、テーブルの情報を表示する) mysql(MySQLクライアントの起動) mysqldump(データベース、テーブルをダンプする) myisamchk(テーブル
PEAR::MDB2 is a merge of the PEAR::DB and Metabase php database abstraction layers. Compatible with PHP 4.3.x upto 5.x It provides a common API for all supported RDBMS. The main difference to most other DB abstraction packages is that MDB2 goes much further to ensure portability. Among other things MDB2 features: An OO-style query API A DSN (data source name) or array format for specifying data
日記だけで4億件のデータ ミクシィが運営するSNS「mixi」は、2007年7月末段階でユーザー数が1110万人。人が12人集まれば、1人はmixiユーザーというわけだ。ユーザーのアクティブ率(ログイン間隔が3日以内)は約62%と高く、2007年4月から6月の月間平均ページビューは117.5億に達した。日記だけでも4億件以上に上るなど、蓄積するデータ量も莫大。2004年3月のサービス開始から、わずか3年半で現在の巨大コミュニティーへと発展したのだ。 ミクシィは、「LAMP(OSのLinux、WebサーバのApache、DBMSのMySQL、開発言語のPerl、PHP、Python)」と呼ばれるWebシステム向けの標準的なオープンソースソフトウェア(以下、OSS)でシステムを自社開発し、安価なPCサーバを1000台以上連ねる超分散構成でmixiのサービスを支えている(広告配信など周辺機能では
前回でPostgreSQLの導入は完了しました。 では実際にPostgreSQLを使用してみましょう。 ・・・いきなりですが、使い方が分かりません。 どうやって使うのでしょう? 何やら解説によるとGUI操作のためにpgAdminIIIというものが用意されているようです。 が、やっぱり使い方がよく分からなかったので、kokoでも分かるphpPgAdminを導入します。 公式サイトphppgadmin.sourceforge.netに行きましょう。 Download latest versionと分かりやすく表示されているので、ここから最新版をダウンロードしてきます。 今回は4.0.1です。 ダウンロードするパッケージの選択です。 Windowsではなじみ深いzipパッケージを選択しましょう。 phpPgAdmin-4.0.1.zipをクリックします。 ダウンロードするミラーサイトの選択です。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く