タグ

mysqlに関するhurvinekのブックマーク (26)

  • MySQLに纏わる10の都市伝説

    誰の口から飛び出したのかは定かではないが、巷ではMySQLにまつわる様々な「都市伝説」がまことしやかに囁かれているようだ。恐らくMySQLに対する理解が低い人や、MySQLがあまり好きではない面々によってFUDっぽく言われているのだと思うが、世の中にはそのような「都市伝説」を真に受けてしまう人が居るのもまた事実であである。MySQLにおける昨今の開発スピードには目覚ましいものがあり、MySQLは性能・安定性・使い易さ共に進化し続けている。(特に先日リリースされたMySQL 5.5は性能・安定性・使い易さを両立している優れたバージョンだ!!)しかし「都市伝説」で語られることは総じて「MySQLはダメな子ちゃん」であるという烙印を押すものばかりであり、MySQLerとしてはそのような言われ無き汚名を全身全霊をもって晴らさなければならない使命を背負っている。そこで、今日はMySQLについて語られ

    MySQLに纏わる10の都市伝説
  • rootのパスワードが必要なスクリプトを書く場合の注意点 - スコトプリゴニエフスク通信

    MySQLのrootユーザーのパスワードが必要なスクリプトを書く場合、 #!/bin/bash mysqladmin -uroot -ptiger ping のようにスクリプト自体にパスワードを書くのではなく、rootのHOMEディレクトリの.my.cnf(/root/.my.cnf)の中にパスワードを書き、rootユーザにしか読めないように600にしておく。 # cat > /root/.my.cnf [client] user = root password = tiger [mysqladmin] user = root password = tiger # chown root:root /root/.my.cnf # chmod 600 /root/.my.cnf と、ここまではいいのだが、テストとして、 $ sudo mysqladmin ping mysqladmin: co

  • なぜMySQLのサブクエリは遅いのか。

    よくMySQLはサブクエリが弱いと言われるが、これは当だろうか?半分は当で半分は嘘である。MySQLのサブクエリだってなんでもかんでも遅いわけではない。落とし穴をしっかり避け、使いどころを間違えなければサブクエリも高速に実行できるのである。今日はMySQLがどんな風にサブクエリを実行し、どのような場合に遅いのかということについて説明しよう。 EXPLAINで実行計画を調べた際に、select_typeにはクエリの種類が表示されるのだが、代表的なサブクエリには次の3つのパターンがある。 SUBQUERY DEPENDENT SUBQUERY DERIVED 結論から言おう。遅いのは2番目、DEPENDENT SUBQUERYである。DEPENDENT SUBQUERYとはいわゆる相関サブクエリに相当するもので、サブクエリにおいて外部クエリのカラムを参照しているサブクエリのことである。そし

    なぜMySQLのサブクエリは遅いのか。
  • MyISAMとInnoDBのどちらを使うべきか

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

  • kndb.jp

    This domain may be for sale!

    hurvinek
    hurvinek 2009/10/15
    インポート時に,パケットがでかいと怒られたらmax_allowed_packet をmy.cnfに追加
  • MySQLクイック・リファレンス

    この文書は、osCommerceで使用しているデータベースMySQLの基的な使い方について解説しています。おもにデータベースの管理者よりも、ユーザに向けて書かれています。 はじめに ここでは、MySQLサーバは起動しているものとして説明します。 MySQLの文字について MySQLでは、データベース名やテーブル名の大文字と小文字を区別しています。それ以外は区別しません。 MySQLのフィールド名やテーブル名に使える文字は、英数字と_(アンダーバー)、$、サーバのキャラクタセットにある文字です。 知っておきたいコマンド mysqladmin(データベースの作成・削除や、MySQLサーバの情報を得る) mysqlshow(データベース、テーブルの情報を表示する) mysqlMySQLクライアントの起動) mysqldump(データベース、テーブルをダンプする) myisamchk(テーブル

  • MySQL/最適化/サーバパラメタ - Linux Tips

    ここでは、サーバパラメタの最適化によるMySQLのチューンについて紹介する。 _ パラメタのチェック 現在の設定値を確認するには、 # mysqld --help とする。 MySQL-5.xでは、 # mysqld --verbose --help としないと、確認できなかった。 あるいは、クライアントから、 mysql> SHOW VARIABLES; でもOK。 ↑ key_buffer_size † MyISAM テーブルのインデックスを保存しておくバッファの大きさ。サーバ全体で共有される。メモリに余裕があれば、MyISAMのみのMySQL専用サーバなら、RAMの1/2、Apache などと共用なら、RAM の1/4程度とする。ただし、サイズを大きくすると、OSのページングのために、逆に遅くなることもあるので注意。 set-variable = key_buffer=256M M

    hurvinek
    hurvinek 2009/03/12
    MySQLのチューニング
  • MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」

    サーバのチューニングをする上でかなりやっかいなのがデータベース系。特にログファイルの量が膨大になると後から中身を見て問題を分析するのも一苦労という場合が。そんなときにこのMySQLtopコマンド「mytop」を使えば一体何が起きているのかがすぐにわかるので問題点の把握が容易になります。ベンチマークするときに併用すればかなり効率が良くなるのではないかと。 インストールと使い方は以下の通り。 まずは「mytop」から。以下が公式サイト。 mytop - a top clone for MySQL http://jeremy.zawodny.com/mysql/mytop/ マニュアルは以下にあります。 mytop - display MySQL server performance info like `top' インストールするにはSSHなどを使ってrootでログイン後、wgetでファイル

    MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」
    hurvinek
    hurvinek 2009/01/29
    MySQLの利用状況を見れるツール.mytop , innotp
  • MOONGIFT: » MySQL(InnoDB)の状態を監視する「innotop」:オープンソースを毎日紹介

    開発案件について、MySQLを利用したケースが増えてきている。日語での情報も充実してきており、実績も増えてきたのが要因だろう。企業内のシステムに導入する場合、必要になるのが運用管理だ。 トップ画面 MySQLの運用管理を行うブラウザツールもあるが、ターミナル上で行うならこちらを使ってみよう。 今回紹介するオープンソース・ソフトウェアはinnotopMySQLの状態を一覧するソフトウェアだ。 innotopはmytopのようなツールで、特にInnoDBについてステータスを管理するのに向いたソフトウェアだ。クエリーやステータス情報、トランザクション情報やレプリケーションの状態、デッドロックなども見られるようになっている。 クエリサマリー Perlで作られたソフトウェアで、DBI:MySqlが必要になっている。コンソール上で動くので、軽快で分かりやすいシステムになっている。設定を追加すること

    MOONGIFT: » MySQL(InnoDB)の状態を監視する「innotop」:オープンソースを毎日紹介
    hurvinek
    hurvinek 2009/01/29
    便利そう「innotopはmytopのようなツールで、特にInnoDBについてステータスを管理するのに向いたソフトウェアだ。クエリーやステータス情報、トランザクション情報やレプリケーションの状態、デッドロックなども見られる」
  • 90h memo: mysql アーカイブ

    2005/04/15 15:20 PostgreSQLcreate table sample1 ( seq_no integer not null primary key, create_date timestamp not null default current_timestamp, update_date timestamp not null default current_timestamp ); というテーブルを作って、phpでこれを操作するプログラムを開発。それでこれをmysqlでも動かそうと考えた。 フィールドの型をみると、mysqlにもinteger型とtimestamp型があったので、「まぁPostgreSQLと同じだろう」と深くは考えずにそのまま作ろうとした。 すると ERROR 1293 (HY000): Incorrect table definition

    hurvinek
    hurvinek 2008/12/25
    datetime型とtimestamp型どっちを選ぶか.
  • OracleとMySQLの比較

    2.1 データベース・セキュリティ この項には、MySQLデータベースとOracle Databaseセキュリティ問題に関する情報が含まれています。 Oracleと同様に、MySQLユーザーはデータベースによって管理されます。 MySQLでは、一連の付与表を使用して、ユーザーとユーザーが所有できる権限を追跡します。 MySQLでは、ユーザーに対して認証、認可およびアクセス制御を実行する際に、これらの付与表を使用します。 2.1.1 データベース認証 Oracle(データベース認証を使用するように設定した場合)や、ユーザー名とパスワードのみを使用してユーザーを認証する他のほとんどのデータベースとは異なり、MySQLでは、ユーザーを認証する際に、追加のlocationパラメータを使用します。 このlocationパラメータは、通常、ホスト名、IPアドレスまたはワイルドカード(%)です。 My

  • http://blogs.sun.com/takemura/date/20081202

    hurvinek
    hurvinek 2008/12/19
    Oracle→MySQL移行
  • [MySQLウォッチ]第17回 MS SQL ServerやOracleなどからの移行を簡単にする「MySQL Migration Toolkit」

    MySQLウォッチ]第17回 MS SQL ServerやOracleなどからの移行を簡単にする「MySQL Migration ToolkitMySQLを採用するシステムが確実に増えており,この瞬間も新しいデータベースがMySQLによって構築されている。しかし,既にデータベースを運用している開発者が,MySQLへ乗り換えるには手間と時間が必要だ。もちろん技術も要求される。 このような既存のデータベースからMySQLへのマイグレーションを推進するため,MySQL AB社は無償ツール「MySQL Migration Toolkit」の提供を予定している。今回は,MySQL Migration Toolkitによるマイグレーションを紹介する。 MySQL Migration Toolkitの機能 MySQL Migration Toolkitは,既存のデータベースをMySQLに移行するた

    [MySQLウォッチ]第17回 MS SQL ServerやOracleなどからの移行を簡単にする「MySQL Migration Toolkit」
    hurvinek
    hurvinek 2008/12/19
    Oracle → MySQLデータ変換ツール
  • セッション管理に向いているデータベースは MySQL ? Oracle ?

    Catalyst-Plugin-Session-Store-DBIC とか検証してます。で前から気になってはいたのですが、Perl 界ではセッション管理するモジュールといえばほぼ全て MySQL が前提っぽい作りになってると思います。でも業務で使っているデータベースは Oracle でして、う〜ん・・・どうすっべかなぁ〜と思ってました。 で、試しに Oracle でセッション管理するためのテーブルをつくってみました。Oracle は VACHAR2 型とかは 4000 文字までしか扱えないので、セッションデータとして使うにはちょっと物足りないデータ型。CLOB 型を使えば解決できるんですが、DBI ベースにいろいろと指定してあげないとダメ。しかも多分遅い。遅いと推測していたから、今まで LOB や LONG 型はあえて使ってきませんでした。 session 格納に使うテーブルの構造はこんな

    hurvinek
    hurvinek 2008/12/15
    MySQLの勝ち
  • Did you reboot?:Mysqlでシーケンスのシミュレーション - livedoor Blog(ブログ)

    Orable,Postgresなどから、MySQLやるハメになったアナタ! まず思うのが、シーケンステーブル (つд⊂)ゴシゴシ (´Д⊂)ナーイ 。゚(゚´Д`゚)゜。ウァァァン 今日、DB移行作業でやるハメになりましたっっ。 ハマったので、メモしておきます。脇の下、軽く汗かいちゃいました。 どうやらLAST_INSERT_IDを使うらしい。 LAST_INSERT_ID(expr)について、公式ドキュメントには下記のようにある。 LAST_INSERT_ID(expr) の引数として expr を指定した場合、引数の値が関数から返され、この値が LAST_INSERT_ID() によって返される次の値として設定される。 うぅ〜む。日語難しい。 試しに、やってみる。 まず、テーブルを作成する。 mysql> CREATE TABLE sequence (i

    hurvinek
    hurvinek 2008/12/12
    MySQLでOracleのようなシーケンスを実現
  • MySQL :: Download MySQL Workbench

    We suggest that you use the MD5 checksums and GnuPG signatures to verify the integrity of the packages you download. MySQL Workbench provides DBAs and developers an integrated tools environment for: Database Design & Modeling SQL Development Database Administration Database Migration The Community (OSS) Edition is available from this page under the GPL. Download source packages of LGPL libraries:

    MySQL :: Download MySQL Workbench
    hurvinek
    hurvinek 2008/12/12
    MySQLのGUIツール.
  • LolipopのMySQLデータベースを簡単バックアップするCGIスクリプト - Ogawa::Memoranda

    Posted by: Hirotaka Ogawa @ July 30, 2004 04:28 PM | LolipopのMySQLデータベースをバックするためには、ロリポップ!ユーザー専用ページからログインして、[WEBツール]の[データベース作成]からphpMyAdminを起動して、ゴニョゴニョすればよいのですが、こういう方法でバックアップを取れること自体あまり知られていない上にあまりにも面倒じゃありませんか? 実は↓のようなCGIスクリプトを用意してやるだけで簡単にバックアップが取れます。スクリプト中のuser,passwd,dbname,hostnameは自分の環境に合わせて適宜編集してください。 #!/bin/sh user=LA00000000 passwd=YOURPASSWD dbname=LA00000000 hostname=mysql00.lolipop.jp mys

    hurvinek
    hurvinek 2008/12/07
    ロリポでMySQLバックアップ
  • A5:SQL Mk-2 - フリーの汎用SQL開発ツール/ER図ツール

    A5:SQL Mk-2は複雑化するデータベース開発を支援するために開発されたフリーのSQL開発ツールです。 高機能かつ軽量で、使い方が分かりやすいことを目標に開発されています。 SQLを実行したり、テーブルを編集するほかに、SQLの実行計画を取得したり、ER図を作成したりすることが出来ます。 特徴・機能 OCI接続・直接接続・ADOまたはODBCを介したDBへの接続 Oracle DatabaseはOCI経由の接続・直接接続が出来ます。 PostgreSQLMySQLは直接接続が出来ます。 Microsoft SQL Serverは、OLE DBプロバイダを直接呼び出した接続ができます。 IBM DB2は、ODBCドライバを直接呼び出した接続ができます。 その他のデータベースは、ADOまたはODBCを利用して接続します。 Oracle, PostgreSQL, MySQLは、A5:SQL

    hurvinek
    hurvinek 2008/12/04
    至れり尽くせり.試す.
  • Open Tech Press | phpMyBackupPro――最も簡単に扱えるMySQL用バックアップツール

    MySQLデータベースを利用したブログやwikiなどのWebベースアプリケーションを運用している人間にとって、データベースエンジンに登録されたデータのバックアップは重要な課題の1つである。実際、データベースへの登録データをSQLクエリ形態でエクスポートする機能を備えたMySQL管理ソリューションは多数存在しているが、専用のMySQLバックアップツールを要望するなら phpMyBackupPro (pMBP)が最適な選択肢と言っていいだろう。 pMBPのインストールに伴う作業負担は、ダウンロードしたtarボールを展開して作成されるディレクトリを各自のサーバにアップロードする程度のものでしかない。ただしpMBPの付属マニュアルでは、セキュリティ的な観点からglobal_conf.phpファイルはサーバ上の別ディレクトリに移動しておくことが推奨されている。なおこれを行う場合は、definitio

    Open Tech Press | phpMyBackupPro――最も簡単に扱えるMySQL用バックアップツール
    hurvinek
    hurvinek 2008/12/03
    phpMyBackupProをcronで定期実行./cronの使えないサーバ(ロリポ)ではこのサービスを使う. http://www.webcron.org
  • MySQLの自動バックアップ phpMyBackupPro – masha.webTechLog

    さくらのレンタルサーバにて、MySQLの自動バックアップをとる。 phpMyBackupPro v2.1 を利用しました。 参考サイトが少なくて大変・・、メモメモ。。 ・必要環境 PHPがおそらく4.3以上 ・私のインストール環境 さくらのレンタルサーバ Apache 1.3.37 PHP 5.2.1 MySQL 4.0.27 ■1■準備 公式サイトより、体と日語パックをダウンロードし、展開。日語パックは、language フォルダ以下へ。 ■2■アップロード 公開ディレクトリ(例:/home/(ユーザー名)/www/cgi-bin/phpMyBackupPro)などへ、FTPソフトなどを使用しアップロード *global_conf.php (設定ファイル) と export ディレクトリ(バックアップファイル書き出しディレクトリ)は、セキュリティ上、非公開ディレクトリへの設置が推奨

    hurvinek
    hurvinek 2008/12/03
    phpMyBackupProをcronで定期実行