タグ

mysqlに関するHISAMATSUのブックマーク (32)

  • MySQLに外部サーバーからアクセスする - 発声練習

    5〜6回は似たようなことで毎回数時間費やしている。とり頭過ぎる。メモしないとダメだ!。 サーバー側環境 Debian GNU/Linux wheezy インストール & 設定 % sudo aptitude install mysql-serverログは /var/log/syslog に吐き出される。設定ファイルは/etc/mysql/my.cnf。データベースは /var/lib/mysql 以下。 外部からアクセスできるようにする。/etc/myusql/my.cnfのbind-addressを以下のようにする。 bind-address = 0.0.0.0/etc/hosts.allowにてmysqldをアクセスできるようにする。仮に hogehoge.co.jp をアクセス可能とする。 mysqld: hogehoge.co.jp LOCALmysqldを立ち上げ直す。 % su

    MySQLに外部サーバーからアクセスする - 発声練習
  • MySQLをmaster:slave=1:1構成にして参照をslaveに向けるのがなぜ良くないか - 酒日記 はてな支店

    MySQLのmasterとslave 1:1にして参照をslave向けるのってやりたがる人多いみたいだけど、性能たいして上がらない割に可用性落ちるだけだからやめようキャンペーン 2011-06-19 00:16:30 via YoruFukurou MySQL はレプリケーションが簡単に構成できるのですが、時折 master 1台 に対して slave 1台、更新処理は master に、参照は slave に、という構成を目にします。 個人的にはこの構成はお勧めでないと思っているので、その理由を考察してみます。 1. 可用性が落ちる 当然ですが、master, slave のどちらが落ちても影響を受けるために可用性が低下します。 2. 全体の性能がほとんど上がらない master 1台ですべてのクエリを処理する場合と比べて、可用性が落ちる引き換えとして見合った性能向上が得られるか、という

  • 紀子さん@へぼぷろぐらまの日常 | mysql_config が見当たらない?

    と思って、とりあえずぐーぐるさんに。 libmysqlclient15-dev というパッケージに入っているとか! $ sudo apt-get install libmysqlclient15-dev して解決。 これは探しにくい debian だと、mysql_config の値を利用してコンパイルしないといけないアプリ( cpan の DBD::mysql とか pythonMySQLdb ) とかって、ほとんどパッケージになってるから、普段はほっとんど必要ないですよね

    HISAMATSU
    HISAMATSU 2010/07/28
    "sudo apt-get install libmysqlclient15-dev" で,mysql_config が入る.
  • MySQLのおまとめINSERTはどれくらい速いか - bonar note

    MySQLで大量のINSERT処理等をする場合、VALUES で長いクエリを作って一気に突っ込むとかなり高速になることはよく知られています。何となく10倍くらいっていう体感だったのですが、計ってみることにしました。 以下と同じスキーマのテーブル foo1, foo2 foo3 を用意します。 CREATE TABLE `foo1` ( `field1` int(10) unsigned NOT NULL DEFAULT '0', `field2` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`field1`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 テスト環境は以下のような感じです。 Server version: 5.1.44 MySQL Community Server (GPL) 2.13 GHz

    MySQLのおまとめINSERTはどれくらい速いか - bonar note
  • MySQLに纏わる10の都市伝説

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

    MySQLに纏わる10の都市伝説
  • MySQLのrootパスワードを忘れた時の対処法 - 絶品ゆどうふのタレ

    備忘録メモ。 某所のMySQLデータベースをバックアップ兼ねて、まるっとテストサイトに持ってきたわけです。 まるっと。 そしたらまぁ、当然というかなんというか、MySQLのrootパスワードが分からなくて、あんなことやこんなことをするのに困ってしまって、(´ε`;)ウーン…とかなってたので、rootパスワードをセットし直す方法を調べたのでメモ。 # /etc/init.d/mysql stop # mysqld_safe --skip-grant-tables & # mysql -u root とすると、パスワードなしでMySQLにログインできちゃう。 で。 > use mysql; > update user set password=PASSWORD('NewPassword') where User='root'; > flush privileges; として、パスワード変更がで

    MySQLのrootパスワードを忘れた時の対処法 - 絶品ゆどうふのタレ
  • レプリケーションしてるMySQLで、マスタやスレーブが障害停止した場合のリカバリプラン - (ひ)メモ

    MySQLで、レプリケーションベースのHAな構成について考えたメモです。 3台(というか2台+1台)がいいかなぁと思っていて、前半はその理由を、後半では{マスタ,スレーブ}が{再起不能になった,ちょっとダウンしてすぐ復帰した}場合のリカバリプランについて書きます。 今のところはこれがベストかなと思っているのですが、「こうしたほうがいいと思う!」「ここがおかしい!」などなどのご意見はコメント、TBなどでいただけるとうれしいです。 ゴール マスタが落ちてもぐーすか寝ていられるようにしたい リカバリの作業はできるだけ単純に、かつ、短時間で完了するようにしたい めんどくさいのはいや 基構成、方針 2台+1台 サービスで使うのは2台 (db1, db2) もう1台は管理用 (db3) スレーブを多数並べる構成にはしない 台数増えると管理コストが上がる マスタダウン時のフェイルオーバとそのフェイルバ

    レプリケーションしてるMySQLで、マスタやスレーブが障害停止した場合のリカバリプラン - (ひ)メモ
  • MySQLでutf8を扱う場合。 - ×××Diary

    デフォルトの文字コードがlatin1になっている為 日語を投げて取り出した時にlatin1で返ってきて えらい勢いで文字化けしちゃうって話ですが 笑 設定ファイル(/etc/my.cnf)に記述して期待した通りの 挙動をしてもらおうじゃん。 って話で、よく見かける設定のそれぞれの意味ってなんだろ?? ってことでちょいと調べてみたってお話のめもめも。 よくみかける設定の例。 [client] default-character-set=utf8 [mysqld] default-character-set=utf8 skip-character-set-client-handshake character-set-server=utf8 collation-server=utf8_general_ci init-connect="SET NAMES utf8" [client] defau

    MySQLでutf8を扱う場合。 - ×××Diary
  • 勉強会「MySQL Hackingの手引き」を終えて

    昨日は、グリー勉強会にて「MySQLハッキングの手引き」というテーマで発表をしました。資料とデモに使用したソースコードやビルドスクリプト等はこちらに公開しています(サンプルプログラムのコンパイルにはソースからビルドしたMySQL5.1以降が必要)。声をかけてくださったグリーの一井さんや、会場準備など諸手続きを行なってくださったグリーのスタッフの方々、参加された皆さまありがとうございました。 ●参加者数の意外な多さ 無料の勉強会とはいえ、このようなマニアックなテーマで、60名定員のところに150名を超える応募が来たというのは驚きました。相当数の方が抽選落ちしてしまったのは残念でしたが、評判が良ければ似たようなテーマでのセミナーをまたどこかで行ないたいと考えています。 自分はMySQLコンサルティングという、MySQLの使い手としての専門職(パフォーマンスチューニングとか運用管理とか)に従事

  • Kazuho@Cybozu Labs: Perl のテスト用に MySQL 環境を自動で構築するモジュール Test::mysqld を書いた

    ORM やウェブアプリケーション関連のライブラリなどのテストケースを書くにあたっては、 RDBMS へのアクセスが必要になります。しかし、SQLite のようなスタンドアローンのデータベースと比較すると、サーバ型データベースである MySQL に接続してテストを書くのは、既存の MySQL の権限設定やデータベース名を気にする必要があったりと、いろいろ不便です。そこで、MySQL のインスタンスをテンポラリディレクトリに自動生成し、テストが終わったら削除してくれる Perl モジュール Test::mysqld を書きました。こんな感じで使います。 use DBI; use Test::mysqld; use Test::More; my $mysqld = Test::mysqld->new( my_cnf => { 'skip-networking' => '' }, # TCP接続を

    HISAMATSU
    HISAMATSU 2009/08/06
    これの Ruby 版で卒研にならないものか.まあ,ならないよなぁ...
  • mysqlでいちいちshow databasesとか打つのがめんどい→readlineのマクロで解決 - (ひ)メモ

    MySQLでいちいちshow tables;とか打つのがだるい。\tみたいなalias設定できないのかなぁ http://twitter.com/weboo/status/1658300902 おぉ、readlineのマクロを使えばいいのかー http://twitter.com/weboo/status/1658314333 なるほ!ってことでちょっと設定してみました。 # ~/.inputrc $if mysql "\C-xd": "show databases;" "\C-xt": "show tables;" "\C-xu": "select user,host,password from mysql.user order by user,host;" "\C-xb": "select user,host,db from mysql.db order by user,host;"

    mysqlでいちいちshow databasesとか打つのがめんどい→readlineのマクロで解決 - (ひ)メモ
    HISAMATSU
    HISAMATSU 2009/06/01
    これはありがたい.
  • error

    Not specified指定されたブログメディアは存在しないか、終了または移転しました。

    HISAMATSU
    HISAMATSU 2009/04/27
    ひさしぶりにいじったら,これにはまった.
  • DebianEtchでMySQLを複数起動させる - u-ichiのにっき

    HISAMATSU
    HISAMATSU 2009/03/29
    研究室のサーバどうしようかなぁ.もうさわりたくないな....
  • MySQL on Mac設定メモ - Hello, world! - s21g

    あなたは今までにインストールしたMySQLの数を覚えているだろうか。 何度となくインストールしてきたMySQLですが、 Macの場合は、いくつもインストールする方法があるので、 どれが良いか迷いました。 @shachiさんにアドバイスをいただいて パッケージ版をインストールしてみたのですが、 Macports版のmysql5-develも捨てがたく、 結局mysql5-devel+GUI Toolsという構成に落ち着きました。 Macportsからインストールした場合、/opt/local 以下にインストールされるので、以下のようにシンボリックリンクを 作成しました。 /var/run/mysqld -> /opt/local/var/run/mysql5 /etc/my.cnf -> /opt/local/etc/mysql5/my.cnf だいたいこんな感じです。 非常に快適になりまし

    HISAMATSU
    HISAMATSU 2008/09/17
    「あなたは今までにインストールしたMySQLの数を覚えているだろうか。」 mac でのインストールは何が正解なんやろうなぁ。
  • MySQLでIPアドレスを扱う(INET_ATONとINET_NTOA) « kawama.jp

    「192.168.2.123」のIPアドレスが、どの会社の帯域に含まれるのかを検索したい場合、INET_ATONというMySQL関数が使えます。 select * from company_table where INET_ATON(ip_from) <= INET_ATON("192.168.2.123") and INET_ATON(ip_to) >= INET_ATON(“192.168.2.123”); 上記のSQLを実行すると、B社が結果で返ってきます。 INET_ATON(たぶんAddressTONumberの略)はネットワークアドレスを10進数に変換してくれる関数です。数値に変換することで、SQLでのネットワークアドレスの扱いがぐっと楽になります。ちなみに逆バージョンのINET_NTOAというのもあります。 http://dev.mysql.com/doc/refman/4.

    HISAMATSU
    HISAMATSU 2008/08/29
    ぐは,これ知らなかった...適当な勉強ばっかやってるからこんな目に...
  • flouri.sh::MySQL Query Reviewer - now with AJAX and Profiling

    strapyourself.in and flouri.sh MySQL Query Reviewer - now with AJAX and Profiling Kevin Hall and I have released a new version of the query_reviewer plugin. You should start by looking at my first post, to see what the basic premise is before reading this article. The single largest improvment is the ability to analyze the database requests of AJAX requests, which is accomplished by piggy

  • [Rails] query-reviewerでRailsアプリのボトルネックを見つける - 射撃しつつ前転 改

    query-reviewerはRails用のプラグインで、データベースにMySQLを使っている場合に、不適切な検索が行われていないかどうかを非常に簡単に調べることができる。(MySQL以外ではたぶん動かない。)使い方は非常に簡単で、 git clone git://github.com/dsboulder/query_reviewer.git vendor/plugins/query_reviewer  するだけ。設定等はまったくいらない。インストールすると、Railsアプリの左上に「SQL DISABLED」というボタンっぽいのが出てくるので、そこをクリックしてENABLEDに変えてからページにアクセスすると、SQLの実行結果を教えてくれる。 スクリーンショットは開発者のブログで見られる。 大体、以下のような情報が得られる。 SQL EXPLAINの結果 SQLの実行時間 どれだけのSQ

    [Rails] query-reviewerでRailsアプリのボトルネックを見つける - 射撃しつつ前転 改
  • MOONGIFT: >> RailsにおけるMySQLのボトルネックを分析する「Palmist」:オープンソースを毎日紹介

    Railsは度々遅いということが話題に上がる。Ruby自体の性能もあるだろうが、データベースを富豪的に使っているのにも原因がある。便利であるためについついデータベースを多用していたり、データの取り出しを複雑(都度集計など)にしていないだろうか。 メイン画面 個人的な経験から言えばボトルネックになりがちなのはレンダリングとデータベースだ。このデータベースの問題点を洗い出すのに便利なのが、またしてもRailsアプリケーションだ。 今回紹介するフリーウェアはPalmist、RailsMySQL実行履歴を見るソフトウェアだ。ソースはGithubで公開されているがライセンスは明記されていなかったので注意していただきたい。 Palmistは他のRailsアプリケーションのログファイルを読み取って、それを解析して表示してくれる。コントローラ、アクション、DBへのCRUDごとにリストアップしてくれる。実

    MOONGIFT: >> RailsにおけるMySQLのボトルネックを分析する「Palmist」:オープンソースを毎日紹介
    HISAMATSU
    HISAMATSU 2008/06/08
    これは便利.つかう
  • mysqlコマンドで、テーブル名とかカラム名の補完(completion)をする方法 - (ひ)メモ

    追記: rehash(auto-rehashも含む)すると、SQL文の補完(seleでタブ打鍵とか)が効かなくなるよと、はす向かいの人に教えてもらいました。 個人的には、SQLは「mysql> help select」とかでオンラインヘルプがびょっと出るので、スキーマの補完ができるんならSQLの補完はとりあえずあきらめてもいいかなと思っています。 常々、テーブル名とか補完できるといいなーと思っていたので、ボロっときいてみたら教えてもらいました。あざーーーーっす! id:mikihoshi++ id:tokuhirom++ id:precuredaisuki++ おかげで効率が300%上がりました。(Benchmark::Stopwatchで計測) http://dev.mysql.com/doc/refman/5.1/en/mysql-command-options.html#option

    mysqlコマンドで、テーブル名とかカラム名の補完(completion)をする方法 - (ひ)メモ
    HISAMATSU
    HISAMATSU 2008/01/23
    おお。
  • [MySQLウォッチ]第23回 押さえておきたいバックアップとリストアのポイント

    よく,データベースの運用に関する相談の中では,バックアップと可用性(アベイラビリティ)を混同してい場合がある。データベースは,ある瞬間のデータを保存することが目的である。障害が発生した際に保存したデータを再現することにより,復元をおこなう。 可用性は,障害対策として,できるだけ止めずにデータベースを運用することを目的としている。もし,止める場合にも最小限の時間で,復旧することを目的としている。 障害が発生した場合に,速やかに復旧することは,非常に重要なことである。そのため,「レプリケーションやクラスタリングを使用すれば万全」と考えるのは,間違いである。もし,レプリケーションやクラスタリング自身に障害が発生すれば,必ずバックアップデータによって,復旧する必要がある。 また,誤ったデータベース更新を実行した場合,レプリケーションやクラスタリングは,すべてのサーバーが即座に更新を実行する。そのた

    [MySQLウォッチ]第23回 押さえておきたいバックアップとリストアのポイント
    HISAMATSU
    HISAMATSU 2007/12/31
    バックアップ法