キムラデービーブログ

オープンソースデータベースを加速する「キムラデービー」のブログです。カレー日記を兼ねてます。なお著者は2010-06-01より日本オラクルに在籍していますが、本サイト(ブログ、またはウェブサイト)において示されている見解は、私自身の見解であって、オラクルの見解を必ずしも反映したものではありません。
MySQL Utilities 1.6
0
    本エントリはMySQL Casual Advent Calendar 2015 の24日目です。

    MySQL Utilitiesというpythonの便利なスクリプト集があります。1.0のときに梶山さんのブログエントリで紹介されました。その後1.1, 1.2とバージョンを重ね、1.3の時には以下のエントリにて21ユティリティとなり、その主要なツールについて説明してあります。MySQL Utilities特有のコマンドラインとか、おおまかな動作イメージは今でも以下のエントリが参考になると思います。

    Pythonで作られた便利なコマンドラインツール MySQL Utilities(Think IT)

    MySQL Utilities 1.4.2で二つのユティリティが追加され、合計23ツールになりました。

    5.15 mysqlrplms : マルチソースレプリケーションの設定と開始(@do_akiさん対抗?)
    5.19 mysqlrplsync : レプリケーション同期チェッカー

    MySQL Utilities 1.4くらいになると参考になる記事もちらほら。以下はPerconaによるmysqlrpmadminとmysqlfailoverの記事。

    MySQL Utilitiesでフェイルオーバ - mysqlrpladmin
    Failover with the MySQL Utilities: Part 2 – mysqlfailover



    現在MySQL Utilitiesは1.5がGAを向かえ、現在1.6が開発中です。
    1.5では上記紹介した記事などを参考にして、一度使ってみてください。

    現在開発中の1.6(2015-12-24時点でMySQL Utilities 1.6.2 beta)ではいくつかツールが追加されています。

    1.6.0では次の二つのユティリティが追加され、合計25ツールになりました。

    5.3 mysqlbinlogmove : バイナリログ再配置ユティリティ
    5.14 mysqlgrants : オブジェクト毎のGRANTS表示

    1.6.1では次の三つのユティリティが追加され、合計28ツールになりました。

    5.4 mysqlbinlogpurge : バイナリログパージユティリティ
    5.5 mysqlbinlogrotate : バイナリログローテートユティリティ
    5.26 mysqlslavetrx : スレーブトランザクションスキップユティリティ

    1.6の目玉はmysqlslavetrxではないでしょうか? これはGTIDを利用したレプリケーションで、スレーブのエラーをスキップするために、空トランザクションを複数打つかわりに利用できるものです。詳しくはこちらをご参照ください。

    Fixing errant transactions with mysqlslavetrx prior to a GTID failover(Percona)

    Firebird Advent Calendar 2015でへろへろな私です。なんか結局各バージョンの紹介とリンクを紹介しただけで終わってしまいました。申し訳ねぇっす。

    明日はみんなも大好きヒゲもじゃギークのサンタクロース、@nippondanjiさんのエントリです!

    JUGEMテーマ:コンピュータ
    | meijik | MySQL | 00:24 | comments(0) | trackbacks(0) | - | - |
    ISO8610形式のUTC日付時刻型をとんちでロード
    0
      ISO8610形式の日付時刻表記があります。イメージこんな感じのフォーマットです。

      20150224T1045Z

      詳しくはwikipediaなどでチェックしてみてください。

      ISO 8601(wikipedia)

      MySQLでは直接扱えないので、心得のあるひとはMySQLに突っ込む前にLL(Light Weigh Language)などで変換すると思うのですが、ある程度限定された書式であれば、比較的簡単にLOAD DATAで変換しながら、つっこめます。
      本エントリは、そのとんちについてのメモです。対象データは以下のようなやつで/tmp/iso8610.txtとして置きます。

      20150224T10Z
      20150224T1045Z
      20150224T104623Z
      20150224T104623.283576Z

      条件はこんな感じ
      (1) すべてUTC
      (2) 分や秒の省略あり
      (3) 秒より小さい値は切り捨て
      (4) +0900とかはなし

      1.DATETIMEカラムの場合。
       TZ(タイムゾーン)は意識しないので、単純に9時間足して突っ込む。足し算のもとになる値は、
      ISO8610形式からTとZを省いて
      分・秒省略を補うため'0000'を追加して、左から14文字(つまり20140224104623)をとる。

      CREATE TABLE `iso_datetime` (
      `v1` varchar(30) DEFAULT NULL,
      `d2` datetime DEFAULT NULL
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

      -- loading data without tz (datetime)
      load data infile '/tmp/iso8610.txt' into table iso_datetime (@var) set v1=@var, d2 = addtime(left(replace(replace(@var,'T',''),'Z','0000'),14),'09:00:00');

      2.TIMESTAMPカラムの場合。
       TZ(タイムゾーン)は意識するので、LOAD DATAを実行するまえにUTC(つまりセッションのTIME_ZONEを'+00:00')に
      設定して、値をつっこむ。元となる値の作成方法はDATETIMEカラムの場合と同じ。

      CREATE TABLE `iso_timestamp` (
      `v1` varchar(30) DEFAULT NULL,
      `t2` timestamp DEFAULT '20150101000000'
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

      -- loading data with tz (timestamp)
      SET @OLD_TIME_ZONE=@@TIME_ZONE;
      SET TIME_ZONE='+00:00';
      load data infile '/tmp/iso8610.txt' into table iso_timestamp (@var) set v1=@var, t2 = left(replace(replace(@var,'T',''),'Z','0000'),14);
      SET TIME_ZONE=@OLD_TIME_ZONE;

      結果はこんな感じです。

      mysql> select * from iso_datetime;
      +-------------------------+---------------------+
      | v1 | d2 |
      +-------------------------+---------------------+
      | 20150224T10Z | 2015-02-24 19:00:00 |
      | 20150224T1045Z | 2015-02-24 19:45:00 |
      | 20150224T104623Z | 2015-02-24 19:46:23 |
      | 20150224T104623.283576Z | 2015-02-24 19:46:23 |
      +-------------------------+---------------------+
      4 rows in set (0.00 sec)

      mysql> select * from iso_timestamp;
      +-------------------------+---------------------+
      | v1 | t2 |
      +-------------------------+---------------------+
      | 20150224T10Z | 2015-02-24 19:00:00 |
      | 20150224T1045Z | 2015-02-24 19:45:00 |
      | 20150224T104623Z | 2015-02-24 19:46:23 |
      | 20150224T104623.283576Z | 2015-02-24 19:46:23 |
      +-------------------------+---------------------+
      4 rows in set (0.00 sec)

      mysql> SET @OLD_TIME_ZONE=@@TIME_ZONE;
      Query OK, 0 rows affected (0.00 sec)

      mysql> SET TIME_ZONE='+00:00';
      Query OK, 0 rows affected (0.00 sec)

      mysql> select * from iso_datetime;
      +-------------------------+---------------------+
      | v1 | d2 |
      +-------------------------+---------------------+
      | 20150224T10Z | 2015-02-24 19:00:00 |
      | 20150224T1045Z | 2015-02-24 19:45:00 |
      | 20150224T104623Z | 2015-02-24 19:46:23 |
      | 20150224T104623.283576Z | 2015-02-24 19:46:23 |
      +-------------------------+---------------------+
      4 rows in set (0.00 sec)

      mysql> select * from iso_timestamp;
      +-------------------------+---------------------+
      | v1 | t2 |
      +-------------------------+---------------------+
      | 20150224T10Z | 2015-02-24 10:00:00 |
      | 20150224T1045Z | 2015-02-24 10:45:00 |
      | 20150224T104623Z | 2015-02-24 10:46:23 |
      | 20150224T104623.283576Z | 2015-02-24 10:46:23 |
      +-------------------------+---------------------+
      4 rows in set (0.00 sec)

      もっといろいろな条件に対応するためには、関数を作ったりする必要がありますが、
      とんちでまにあう場合には、便利ですLOAD DATA INFILE。関数の例は以下。

      mjc / iso8601_to_datetime.sql

      JUGEMテーマ:コンピュータ


      | meijik | MySQL | 23:05 | comments(0) | trackbacks(0) | - | - |
      MySQLのGIS拡張2014
      0
        本エントリはMySQL Casual Advent Calendarの第11日目です。

        MySQLの地理情報システム(GIS:Geographic Information System)拡張は4.1の時代から存在します。
        以前4.1/5.0のMBR*について以下のブログを書きました。

        MySQLのGIS拡張

        そして、5.1のBetaについて以下のブログを書きました。

        MySQLのGIS拡張(2) 5.1の拡張

        しかし、残念ながら5.1でのGIS拡張は本体にはマージされませんでした。

        MySQL 5.6からはちゃんと動作するContainsがST_Containsとして実装されています。
        以前のブログエントリと同様のコマンドをST_*について実行するとST_Contains(@g1,@g3)が0を返すことがわかります。

        [実行コマンド]
        SET @g1 = GeomFromText('Polygon((0 2,1 0,2 2,0 2))');
        SET @g2 = GeomFromText('Point(1 1)');
        SET @g3 = GeomFromText('Point(2 1)');
        SELECT MBRContains(@g1,@g2);
        SELECT MBRContains(@g1,@g3);
        SELECT Contains(@g1,@g2);
        SELECT Contains(@g1,@g3);
        SELECT ST_Contains(@g1,@g2);
        SELECT ST_Contains(@g1,@g3);

        [実行結果]
        mysql> SET @g1 = GeomFromText('Polygon((0 2,1 0,2 2,0 2))')
        Query OK, 0 rows affected (0.00 sec)

        mysql> SET @g2 = GeomFromText('Point(1 1)');
        Query OK, 0 rows affected (0.01 sec)

        mysql> SET @g3 = GeomFromText('Point(2 1)');
        Query OK, 0 rows affected (0.00 sec)

        mysql> SELECT MBRContains(@g1,@g2);
        +----------------------+
        | MBRContains(@g1,@g2) |
        +----------------------+
        | 1 |
        +----------------------+
        1 row in set (0.00 sec)

        mysql> SELECT MBRContains(@g1,@g3);
        +----------------------+
        | MBRContains(@g1,@g3) |
        +----------------------+
        | 1 |
        +----------------------+
        1 row in set (0.00 sec)

        mysql> SELECT Contains(@g1,@g2);
        +-------------------+
        | Contains(@g1,@g2) |
        +-------------------+
        | 1 |
        +-------------------+
        1 row in set (0.00 sec)

        mysql> SELECT Contains(@g1,@g3);
        +-------------------+
        | Contains(@g1,@g3) |
        +-------------------+
        | 1 |
        +-------------------+
        1 row in set (0.00 sec)

        mysql> SELECT ST_Contains(@g1,@g2);
        +----------------------+
        | ST_Contains(@g1,@g2) |
        +----------------------+
        | 1 |
        +----------------------+
        1 row in set (0.00 sec)

        mysql> SELECT ST_Contains(@g1,@g3);
        +----------------------+
        | ST_Contains(@g1,@g3) |
        +----------------------+
        | 0 |
        +----------------------+
        1 row in set (0.00 sec)

        MySQL 5.7からはさらに拡張されています。が、ここでちと時間切れ。
        続きは後ほど本エントリを更新するか、別エントリにて記述することにします。どうもすみません。。。。

        JUGEMテーマ:コンピュータ
        | meijik | MySQL | 05:07 | comments(0) | trackbacks(0) | - | - |
        2014 MySQL 春の日米OracleACE祭り
        0
          ということで、@yoku0825さんがOracle ACEになりました☆記念&Oracle ACE Director (MySQL) Ronald Bradfordさんの来日イベント、のMyNA会が明日(2014-04-14 シブヤで行われます〜)

          MyNA(日本MySQLユーザ会)会 2014年4月

          まだお席ありますのでどうぞー。

          Rornald BradfordさんはOracle Pressから三冊のMySQL本を出されています。今回は木村の自腹で(予定)以下の本にBradfordさんのサインをいただいて(予定)じゃんけん大会に供出する予定です! ご興味のあるかたは是非ご参加のうえじゃんけん・じゃんけんしてくださいー。

          JUGEMテーマ:コンピュータ


          評価:
          Ronald Bradford,Chris Schneider
          McGraw-Hill Osborne Media
          ¥ 1,716
          (2012-09-25)
          コメント:手堅いつくり。

          | meijik | MySQL | 20:48 | comments(0) | trackbacks(0) | - | - |
          2014 MySQL 春のWorkbench祭り
          0
            ということで、去年から細々と続けていたWorkbench紹介の記事はMySQL Workbench 6.1 GAとともにめでたく終了(第4回目)いたしました。是非チェックしてみてください。

            DBドキュメント出力とMEBのためのGUI、次期版6.1の新機能を紹介

            すべての記事は著者ページからどうぞー。

            JUGEMテーマ:コンピュータ


            | meijik | MySQL | 12:31 | comments(0) | trackbacks(0) | - | - |
            テストデータ作成時に便利なストアドファンクション
            0
              JUGEMテーマ:コンピュータ


              この記事は MySQL Casual Advent Calendar 2013 の 13 日目です。

              カジュアル! ということで、テストデータ作成時にいつも'AAAA'ばかりでは辛いので、MySQLで利用できる10行ほどのストアドファンクションをご紹介します。

              拙書「プロになるためのデータベース技術入門」p.223では「それっぽい」苗字を返すrand_family_nameという以下のファンクションを紹介しました。

              delimiter $
              create function rand_family_name() returns varchar(10)
              begin
              declare v_family_name varchar(10) default '小笠原';
              declare v_f1,v_f2 varchar(5);
              set v_f1=mid('佐鈴田畑山池石川渡高大中小伊斉加吉井清松竹梅木林森長橋内外金',FLOOR(1 + RAND()*30),1);
              set v_f2=mid('藤本辺畑橋村田川上水中口島崎井清松竹梅木林森内外金野原塚部池',FLOOR(1 + RAND()*30),1);
              if (v_f1 !=v_f2) then
              set v_family_name = concat(v_f1, v_f2);
              end if;
              return(v_family_name);
              end$
              delimiter ;

              これはmid関数をつかって一文字抜き出して合成するというものでしたが、文字単位でなく文字列単位で行いたいときにはELT関数を使います。これは第一引数の数字にあわせて文字列を返すというものです。

              delimiter $
              create function rand_virtual_name() returns varchar(20)
              begin
              declare v_virtual_name varchar(20);
              declare v_f1,v_f2 varchar(10);
              set v_f1=elt(FLOOR(1 + RAND()*20),'コードギアス亡国の','ジョジョの','中二病でも','アイドル','恋と選挙と','電波女と','アウトブレイク','ささみさん','人類は','テラ','進撃の','僕は友達が','とある魔術の','謎の','殺人','インフィニット','魔法少女','ガンダム','13日の','さんをつけろよ');
              set v_f2=elt(FLOOR(1 + RAND()*20),'アキト','奇妙な冒険','恋がしたい!','マスター','チョコレート','青春男','カンパニー','@がんばらない','衰退しました','フォーマーズ','巨人','少ない','禁書目録','彼女X','教室','ストラトス','まどか☆マギカ','UC[ユニコーン]','金曜日','デコ助野郎!');
              set v_virtual_name = concat(v_f1, v_f2);
              return(v_virtual_name);
              end$
              delimiter ;

              乱数により時々実在の何かになってしまうかもしれませんが、まぁ乱数のせい、ということで :)

              実行してみますぜ。

              えいっ。

              mysql> select rand_virtual_name();
              +----------------------+
              | rand_virtual_name() |
              +----------------------+
              | 人類はまどか☆マギカ |
              +----------------------+
              1 row in set (0.00 sec)

              うーん、博愛的だなぁ。

              mysql> select rand_virtual_name();
              +----------------------------+
              | rand_virtual_name() |
              +----------------------------+
              | インフィニット衰退しました |
              +----------------------------+
              1 row in set (0.00 sec)

              いや、確かにシーズン2はチト力が落ちているかもしれんけど。。。

              mysql> select rand_virtual_name();
              +-------------------------+
              | rand_virtual_name() |
              +-------------------------+
              | とある魔術のデコ助野郎! |
              +-------------------------+
              1 row in set (0.00 sec)

              誰? 誰のこと??

              mysql> select rand_virtual_name();
              +------------------------+
              | rand_virtual_name() |
              +------------------------+
              | ガンダム@がんばらない |
              +------------------------+
              1 row in set (0.00 sec)

              がんばって〜。

              ということで、乱数による偶然の笑いを得るか、乱数の精度に嘆きつつ、文字列を多くするかして
              辛いテストを乗り越えてください。。。。

              明日 12/14 は @sh2nd さんです。お楽しみに。

              | meijik | MySQL | 00:58 | comments(1) | trackbacks(0) | - | - |
              INFORMATION SCHEMA [MySQL 5.1.66以降+InnoDB Plugin、5.5.28以降、5.6以降の場合]
              0
                情報スキーマ(INFORMATION SCHEMA)はバージョン毎にテーブルが追加されていっています。 首記のバージョンで追加されたのは、次のものです。

                [追加された3個のテーブル]
                +---------------------------------------+
                | Tables_in_information_schema          |
                +---------------------------------------+
                | INNODB_BUFFER_PAGE_LRU                |独自: InnoDBバッファプールページLRU情報
                | INNODB_BUFFER_POOL_STATS              |独自: show engine innodb status;相当の情報
                | INNODB_BUFFER_PAGE                    |独自: InnoDBバッファプールページ情報
                +---------------------------------------+
                40 rows in set (0.00 sec)
                

                これらはまず5.6に実装されてバックポートされたものです。

                5.6ではさらに20個(I_S総数でMySQL 5.5では40個、MySQL 5.6では60個)のテーブルがありますので、 それらについては順にご紹介いたします。

                JUGEMテーマ:コンピュータ
                | meijik | MySQL | 23:26 | comments(0) | trackbacks(0) | - | - |
                「MySQLバックアップの基本」資料が公開されました。
                0

                  バックアップ勉強会#2 (#bkstudy) での発表資料である「MySQLバックアップの基本」資料が公開されました。
                  30分の発表だったようですが、コンパクトにまとまっています。MySQLバックアップに「もやもや」している人はぜひこれを読んでスッキリしてください。
                  私の本でも第6章にて「障害対策の考え方」と「バックアップ・リストア(基本編)」とまとめていますので、もう少し掘り下げたい方はこちらをぜひ参照してください。(OSコマンドを使ったコールドバックアップと、mysqldumpを用いたホットバックアップの詳細を記述しています)
                  JUGEMテーマ:コンピュータ


                  | meijik | MySQL | 02:57 | comments(0) | trackbacks(0) | - | - |
                  MySQL 5.6RCついに登場。オラオラオラオラオラオラオラオラオラクルから♪
                  0
                    ということで、ジョジョをやっと60巻まで読んだ私がついこんなタイトルにしてしまいましたが。とにかくざっくり知りたい方は是非オトコの以下のエントリをご参照ください。

                    開発スピードアクセル全開ぶっちぎり!日本よ、これがMySQL 5.6だッ!!

                    で、私のほうはそれにとりあげられなかった子ネタを順次。

                    ひとつめはinnodb-read-onlyオプション。このオプションはMySQLサーバを読み込み専用モードにして、DVDやCDのような読み込み専用メディアのInnoDBテーブルをアクセスする、というもの。

                    同じOSSDBではFirebirdが同様の機能を持っており, gfix -mode read_only /path/to/database.fdbでデータベースを読みとり専用メディアに配置できたが、これと類似の機能をMySQLで初提供! まぁ考慮しなければいけない点は多々ありそうですが、とりあえず試みが開始されたということで、気になるひとはチェキら!

                    14.2.6.1. Support for Read-Only Media

                    JUGEMテーマ:コンピュータ


                    | meijik | MySQL | 21:18 | comments(0) | trackbacks(0) | - | - |
                    今週末(2012/07/21(土)) JPOUGの勉強会でMySQLのセミナーやります。
                    0
                      前回はMySQL Beginner Talkにて「インストールのお作法」しゃべらせていただきましたが、今回はJapan Oracle User Groupにて、オラクル! ではなくMySQLのお話をさせていただきます。

                      今回のテーマは「もっともっとMySQL♪気軽に試す各種機能」ということで(読み筋は宇宙人)ほかのデータベースでは実際に動かすのに苦労する各種機能をさくっと動作させて実際に試してみよう、というところをメインにお話させていただきます。ご興味のあるかたは是非登録のうえご参加ください。無料です。

                      JPOUG> SET EVENTS 20120721

                      JUGEMテーマ:コンピュータ


                      | meijik | MySQL | 08:44 | comments(0) | trackbacks(0) | - | - |
                       123456
                      78910111213
                      14151617181920
                      21222324252627
                      282930    
                      << June 2020 >>
                      + RECOMMEND
                      100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊
                      100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊 (JUGEMレビュー »)

                      100人のうちの一人としてミックさんの本を推薦しています。
                      + RECOMMEND
                      MySQL 5.1 Plugin Development
                      MySQL 5.1 Plugin Development (JUGEMレビュー »)
                      Andrew Hutchings,Sergei Golubchik
                      MySQL 5.1 のプラグインを作るならこれ!
                      + RECOMMEND
                      AWKを256倍使うための本 (Ascii 256倍)
                      AWKを256倍使うための本 (Ascii 256倍) (JUGEMレビュー »)
                      志村 拓,鷲北 賢,西村 克信
                      ここにきてまさかの復刊。15〜16年前の本ですが、いまでも十分役立ちますよ!!
                      + RECOMMEND
                      Linux-DB システム構築/運用入門 (DB Magazine SELECTION)
                      Linux-DB システム構築/運用入門 (DB Magazine SELECTION) (JUGEMレビュー »)
                      松信 嘉範
                      Linux-DB システム構築の新スタンダード。DB Magazine人気連載、待望の書籍化です!!
                      + RECOMMEND
                      + RECOMMEND
                      超・極める!MySQL
                      超・極める!MySQL (JUGEMレビュー »)
                      坂井 恵,志村 和彦,ひろせ まさあき,松信 嘉範
                      内容は少々古くなりましたが、内部説明があり、いろいろ面白いです。
                      + RECOMMEND
                      The Root of .NET Framework
                      The Root of .NET Framework (JUGEMレビュー »)
                      荒井 省三
                      .NETの根っこをつかむ、か?
                      + RECOMMEND
                      エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド
                      エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド (JUGEMレビュー »)
                      奥野 幹也
                      これまでにない構築、そして構築後のMySQLのための本。
                      + RECOMMEND
                      Database Management Systems
                      Database Management Systems (JUGEMレビュー »)
                      Raghu Ramakrishnan,Johannes Gehrke
                      ミックさん連載の参考書籍です。
                      + RECOMMEND
                      Advanced Programming in the UNIX Environment: Paperback Edition (2nd Edition) (Addison-Wesley Professional Computing Series)
                      Advanced Programming in the UNIX Environment: Paperback Edition (2nd Edition) (Addison-Wesley Professional Computing Series) (JUGEMレビュー »)
                      W. Richard Stevens,Stephen A. Rago
                      必読! といいつつ私が読んだのは初版の日本語訳です。差分はチェックしないといけませんね。
                      + RECOMMEND
                      + RECOMMEND
                      + RECOMMEND
                      Western Digital Scorpio Blue 2.5inch 5400rpm 320GB 8MB PATA WD3200BEVE
                      Western Digital Scorpio Blue 2.5inch 5400rpm 320GB 8MB PATA WD3200BEVE (JUGEMレビュー »)

                      DELL SX260の換装用に購入。今はコチラのほうが安いですね。
                      + RECOMMEND
                      情熱プログラマー ソフトウェア開発者の幸せな生き方
                      情熱プログラマー ソフトウェア開発者の幸せな生き方 (JUGEMレビュー »)
                      Chad Fowler
                      OSC2010神戸に出展されたジュンク堂で買いました。
                      + RECOMMEND
                      Software Design 総集編 【2000~2009】(DVD付)
                      Software Design 総集編 【2000~2009】(DVD付) (JUGEMレビュー »)

                      メガトン級の過去記事。売り切れる前にお店に急げ!
                      + RECOMMEND
                      + RECOMMEND
                      玄人志向 2.5型HDDケース SATA対応USB2.0接続 GW2.5AI-SU2
                      玄人志向 2.5型HDDケース SATA対応USB2.0接続 GW2.5AI-SU2 (JUGEMレビュー »)

                      Aspire 1410 HDD換装後、昔のHDDはこれにいれます。
                      + RECOMMEND
                      + RECOMMEND
                      acer Aspire Timeline AS1410 11.6型ノートPC Windows7搭載 250GB ブラック AS1410-KK22
                      acer Aspire Timeline AS1410 11.6型ノートPC Windows7搭載 250GB ブラック AS1410-KK22 (JUGEMレビュー »)

                      色違い黒(他に青と白があります): メモリは最大4GBとあるが、がんばれば8GBいけるらしい。
                      + RECOMMEND
                      Firebird 徹底入門
                      Firebird 徹底入門 (JUGEMレビュー »)
                      木村 明治,はやし つとむ,坂井 恵
                      Firebird日本ユーザ会のはやしさん、そしてMyNAから拝借(?) してきた坂井さんとともに書きました。まだ誰も知らないFirebird 2.5や、いままでドキュメントのなかったツール類についてもソースを確認してとりあげた本です。是非ご活用ください。
                      + SELECTED ENTRIES
                      + RECENT COMMENTS
                      • たまたま「プリントヘッドの種類が違います」エラーから復活@MG6230
                        meijik (11/20)
                      • [ミュージシャンに聴かせたい・弾かせたい!] (4) 山田元気様
                        meijik (07/27)
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        meijik (03/03)
                      • 2019年の木村明治
                        田中尚 (01/08)
                      • 使い慣れたSQLに潜む実装依存: Firebirdの場合(6) 文字列との結合演算子
                        noname (12/10)
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        Moriaki_ (01/05)
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        Moriaki_ (01/05)
                      • 2015年版 InterBaseの歩み
                        nakagami (12/06)
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        meijik (11/22)
                      • 分散DB本読書会第46回メモ「STOP AFTER 10」
                        masudahidehiko (09/01)
                      + RECENT TRACKBACK
                      + CATEGORIES
                      + ARCHIVES
                      + MOBILE
                      qrcode
                      + LINKS
                      + PROFILE