mysql postgreSQL noSQL学習資料
MongoDB: The Definitive Guide 2nd edition –Oreilly May 26, 2013
高性能MySQL(第3版)(MySQL旗艦名著驚献全面アップグレード)
SQL基本チュートリアル
目次
目録前言III本書IV読者対象IV本書を学習する前の予備知識IV本書に係る関係データベースV本書の学習手配V随書光ディスク概要VI第1章データベースとSQL 1-1データベースとは何か3身近なデータベース3なぜDBMSが重要なのか4 DBMS種類6-2データベースの構造8 RDBMSの一般的なシステム構造8表の結び构10 1-3 SQL概要13标准SQL 13 SQL文及びその种类14 SQLの基本书き込みルール15-4表の作成18表の内容の作成18データベースの作成19表の作成19表の作成(CREATE TABLE文)19命名ルール21データ型の指定22拘束の设定24-5表の削除と更新25表の削除(DROP TABLE文)25テーブル定義の更新(ALTER TABLE文)26 Shohinテーブルにデータ27を挿入練習問題30第2章クエリー基礎31 2-1 SELECT文基礎33列のクエリー33テーブルのすべての列35をクエリーして列に別名36定数を設定するクエリー38結果から重複行38を削除WHERE文に基づいてレコード41注記を選択する書き方43 2-2算術演算子と比較演算子45算術演算子45注意NULL 46比較演算子48文字列に不等号を使用する場合の注意点50比較演算子53-3-3論理演算子56 NOT演算子56 AND演算子とOR演算子58を用いた比較演算子53-3論理演算子56 AND演算子とOR演算子58をカッコで強化する60論理演算子と真値62 NULLを含む場合の真値64練習問題66第3章集約と並べ替え67-1表の集約調査質問69集約関数69計算テーブルにおけるデータの行数70 NULL以外のデータの行数71計算合計値72計算平均値74計算最大値と最小値75集約関数を用いて重複値を削除する(キーワードDISTINCT)77 3-2テーブルをグループ化する79 GROUP BY句79集約キーにNULLが含まれている場合81 WHERE句を用いる場合GROUP BYの実行結果82集約関数とGROUP BY句に関するよくあるエラー84 3-3集約結果指定条件89 HAVING句89 HAVING句の構成要素92 HAVING句に対して、WHERE句に書く条件93-4クエリー結果をソート96 ORDER BY句96昇順または降順98複数のソートキー99 NULLを指定する順序99並べ替えキーに表示用別名100 ORDER BY句で使用可能な列102列番号102練習題104第4章データ更新105 4-1データの挿入を使用しない(INSERT文の使い方)107 INSERT 107 INSERT文の基本構文108列リストの省略111 NULL 111挿入デフォルト112他の表からデータ114 4-2データをコピーする削除(DELETE文の使い方)117 DROP TABLE文とDELETE文117 DELETE文の基本構文117削除対象を指定するDELETE文(検索型DELETE)118 4-3データの更新(UPDATE文の使い方)121 UPDATE文の基本構文121条件を指定するUPDATE文(検索型UPDATE)122 NULLによる更新123複数列更新124 4-4トランザクション126トランザクション126トランザクション127 ACIDプロパティ132練習問題133第5章複雑クエリ135 5-1ビュー137ビューと表137ビューを作成する方法139ビューの制限①ビューを定義する際にORDER BY句142ビューを使用できない制限②ビューを更新143削除ビュー1475-2サブクエリ148サブクエリとビュー148サブクエリの名称151サブクエリ151サブクエリ151サブクエリの書込位置154サブクエリを使用する際の注意点1555-3サブクエリ156一般的なサブクエリとサブクエリの違い156サブクエリも集合を分割するための159結合条件であるサブクエリに必ず記載する160練習問題161第6章関数、述語、CASE式1636-1様々な関数165の関数の種類165算術関数166文字列関数170日付関数178変換関数1826-2述語186述語186述語186何が述語186 LIKE述語であるか——文字列の部分一致問合186 BETWENT述語——範囲問合せ190 IS NULL、IS NOT NULL−NULL−NULL 191 IN述語であるか否かを判定する−ORの簡便な使い方192 IN述語のパラメータとしてサブクエリを用いる193 EXIST述語198−3 CASE式202 CASE式202 CASE式の構文202 CASE式の使い方203練習問題209第7章集合演算211−7表の加減法213集合演算213表の加算とは何か法−UNION 213集合演算の注意事項216は、重複行の集合演算を含む−ALLオプション217表の共通部分−INTERSECT 218に記録された減算−EXCEPT 219−2連結を選択する(列単位で表を連結する)222連結222内連結――INNER JOIN 223外連結――OUTER JOIN 228以上の表の連結231クロス連結――CROSS JOIN 234特定の連結文と古い文法237練習問題242第8章SQL上級処理243 8-1ウィンドウ関数245ウィンドウ関数246ウィンドウ関数の文法246文法の基本的な使い方――RANK関数246 PARTION BY 249専用ウィンドウ関数の種類250ウィンドウ関数の適用範囲251をウィンドウ関数として使用する集約関数252計算移動平均254両ORDER BY 257 8-2 GROUPING演算子259を同時に合計値259 ROLLUPを計算する合計値260 GROUPING関数を同時に計算するNULLをより分かりやすくする265 CUBE——データで積み木267 GROUPING SETS——所望の積み木269練習問題270付録AインストールPostgreSQL 271付録B PostgreSQLでSQLを実行する方法278付録C練習問題解答284
,MongoDB 。《MongoDB ( 2 )》 , 、 。
MongoDB 、 。
MongoDB , 。
, 、 , 。
, , , 。
、 , MongoDB 。
。
《MongoDB ( 2 )》 。
Apress , The Definitive Guide to MongoDB 2nd edition
高性能MySQL(第3版)(MySQL旗艦名著驚献全面アップグレード)
《 MySQL( 3 )》 MySQL , 。 3 , MySQL5.5 ,
、 , 。
16 6 , MySQL , , , 、 , ,
MySQL MySQL 。 , 。
《 MySQL( 3 )》 (DBA) , 。 , 。
BaronSchwartz , Charlottesville, Xaprb, QWERTY Dvorak 。
,Baron Lynn Carbon 。 , http://www.xaprb.com/blog/
PeterZaitsev MySQLAB , mysqlperformanceblog.com 。
, TB 。
( )。Peter 。
VadimTkachenko MySQLAB 。 , 、 , 。
, MySQL 。
, SQLServer2000 Oracle MySQL, 、 。
2007 , DBA 、 , MySQL , 。 。
NinGoo, :http://www.ningoo.net
,2009 , MySQL , MySQL 、Troubleshooting ,
MySQL , MySQL 30 3000 , 、 。
:http://orczhou.com
2010 ******** 。 MySQLDBA, MySQL MySQL InnoDB ,
。 , MySQL 。
MySQL Mony , 、 MariaDB10.0 , MariaDB (Maria-captains) 。
, 。 ******** , MySQL ,
MySQLBugFix 。 MySQL 。
2008 , 。2011 ******** , ,MySQL 。
1 MySQL
1.1 MySQL
1.1.1
1.1.2
1.2
1.2.1
1.2.2
1.3
1.3.1
1.3.2
1.3.3
1.3.4 MySQL
1.4
1.5 MySQL
1.5.1 InnoDB
1.5.2 MyISAM
1.5.3 MySQL
1.5.4
1.5.5
1.5.6
1.6 MySQL (Timeline)
1.7 MySQL
1.8
2 MySQL
2.1
2.2
2.2.1
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.3.6
2.4
2.4.1
2.4.2
2.5
2.5.1 http_load
2.5.2 MySQL .
2.5.3 sysbench
2.5.4 dbt2 TPC-C
2.5.5 Percona TPCC-MySQL
2.6
3
3.1
3.1.1
3.1.2
3.2
3.2.1 PHP
3.3 MySQL
3.3.1
3.3.2
3.3.3
3.4
3.4.1
3.4.2
3.4.3
3.5
3.5.1 USER_STATISTICS
3.5.2 strace
3.6
4 Schema
4.1
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6 (identifier)
4.1.7
4.2 MySQL schema
4.3
4.3.1
4.3.2 .
4.3.3
4.4
4.4.1
4.4.2
4.5 ALTER TABLE
4.5.1 .frm
4.5.2 MyISAM
4.6
5
5.1
5.1.1
5.2
5.3
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
5.3.6
5.3.7
5.3.8 ( )
5.3.9
5.3.10
5.3.11
5.4
5.4.1
5.4.2
5.4.3
5.5
5.5.1 .
5.5.2
5.5.3
5.6
6
6.1
6.2 :
6.2.1
6.2.2 MySQL
6.3
6.3.1
6.3.2
6.3.3
6.4
6.4.1 MySQL /
6.4.2
6.4.3
6.4.4
6.4.5
6.5 MySQL
6.5.1
6.5.2 UNION
6.5.3
6.5.4
6.5.5
6.5.6
6.5.7
6.5.8 .
6.5.9
6.6 (hint)
6.7
6.7.1 COUNT()
6.7.2
6.7.3
6.7.4 GROUP BY DISTINCT
6.7.5 LIMIT
6.7.6 SQL_CALC_FOUND_ROWS
6.7.7 UNION
6.7.8
6.7.9 .
6.8
6.8.1 MySQL
6.8.2 .
6.8.3 .
6.9
7 MySQL
7.1
7.1.1
7.1.2
7.1.3
7.1.4 .
7.1.5
7.1.6
7.2
7.2.1
7.2.2
7.2.3
7.3
7.4 MySQL
7.4.1
7.4.2
7.4.3
7.4.4
7.5
7.6
7.6.1
7.6.2 SQL
7.6.3
7.7
7.8
7.9
7.9.1 MySQL
7.9.2
7.9.3
7.10
7.10.1
7.10.2
7.10.3 MySQL5.1
7.10.4
7.10.5
7.11 (XA)
7.11.1 XA
7.11.2 XA
7.12
7.12.1 MySQL
7.12.2
7.12.3
7.12.4
7.12.5 InnoDB .
7.12.6
7.12.7
7.13
8
8.1 MySQL
8.1.1 、
8.1.2
8.1.3
8.1.4
8.2
8.3 MySQL
8.3.1 MySQL
8.4
8.4.1 MySQL ?
8.4.2 .
8.4.3 .
8.4.4
8.4.5 InnoDB (Buffer Pool)
8.4.6 MyISAM (Key Caches)
8.4.7
8.4.8 (Table Cache)
8.4.9 InnoDB (Data Dictionary)
8.5 MySQL I/O
8.5.1 InnoDB I/O
8.5.2 MyISAM I/O .
8.6 MySQL .
8.6.1 InnoDB
8.6.2 MyISAM
8.7
8.7.1 BLOB TEXT
8.7.2 (Filesorts).
8.8
8.9
8.10 InnoDB
8.11
9
9.1 MySQL
9.2 MySQL CPU
9.2.1 : CPU CPU
9.2.2 CPU
9.2.3 CPU
9.3
9.3.1 I/O I/O
9.3.2 ,
9.3.3
9.3.4 /
9.3.5
9.4
9.4.1
9.4.2
9.4.3
9.4.4 (SSD)
9.4.5 PCIe
9.4.6 .
9.4.7
9.4.8 Flashcache
9.4.9 MySQL
9.5
9.6 RAID
9.6.1 RAID 、
9.6.2 RAID RAID
9.6.3 RAID
9.7 SAN NAS
9.7.1 SAN
9.7.2 NFS SMB SAN
9.7.3 MySQL SAN
9.7.4 SAN
9.8
9.9
9.10
9.11
9.12
9.13
9.14
9.15
9.15.1 vmstat
9.15.2 iostat
9.15.3
9.15.4 CPU
9.15.5 I/O
9.15.6
9.15.7
9.16
10
10.1
10.1.1
10.1.2
10.2
10.2.1
10.2.2
10.2.3
10.2.4
10.2.5
10.3
10.3.1
10.3.2
10.3.3 :
10.3.4
10.3.5
10.3.6
10.4
10.4.1
10.4.2 - -
10.4.3 - -
10.4.4 -
10.4.5
10.4.6 、
10.4.7
10.4.8
10.5
10.5.1
10.5.2
10.5.3
10.6
10.6.1
10.6.2
10.6.3
10.6.4
10.6.5
10.6.6 -
10.7
10.7.1
10.7.2
10.7.3
10.7.4
10.7.5
10.7.6
10.7.7 ID .
10.7.8 ID .
10.7.9
10.7.10
10.7.11 .
10.7.12 InnoDB
10.7.13 -
10.7.14
10.7.15
10.7.16 .
10.7.17
10.7.18
10.8
10.9 MySQL
10.10
10.11
11 MySQL
11.1
11.1.1
11.2 MySQL
11.2.1
11.2.2
11.2.3
11.2.4
11.2.5
11.2.6
11.2.7
11.3
11.3.1
11.3.2
11.3.3
11.4
12
12.1
12.2
12.3
12.3.1 (MTBF)
12.3.2 (MTTR)
12.4
12.4.1
12.4.2 MySQL
12.4.3
12.5
12.5.1
12.5.2 IP IP
12.5.3
12.5.4
12.6
13 MySQL
13.1 、
13.2 MySQL
13.3 MySQL
13.4
13.5 MySQL
13.5.1 MySQL
13.6 MySQL (DBaaS)
13.6.1 Amazon RDS
13.6.2 DBaaS
13.7
14
14.1
14.2 Web
14.2.1
14.3
14.3.1
14.3.2
14.3.3
14.3.4
14.3.5
14.3.6
14.3.7 HandlerSocket memcached
14.4 MySQL
14.5 MySQL
14.6
15
15.1
15.2
15.3 MySQL
15.3.1
15.3.2
15.3.3
15.3.4
15.4
15.4.1
15.4.2
15.5
15.5.1
15.5.2
15.6
15.6.1
15.6.2
15.6.3
15.6.4
15.6.5 InnoDB
15.7
15.7.1 MySQL Enterprise Backup
15.7.2 Percona XtraBackup .
15.7.3 mylvmbackup
15.7.4 Zmanda Recovery Manager
15.7.5 mydumper
15.7.6 mysqldump.
15.8
15.9
16 MySQL
16.1
16.2
16.3 SQL
16.4
16.4.1
16.4.2
16.4.3 Innotop
16.5
A MySQL
B MySQL
C
D EXPLAIN
E
F MySQL Sphinx
SQL基本チュートリアル
目次
目録前言III本書IV読者対象IV本書を学習する前の予備知識IV本書に係る関係データベースV本書の学習手配V随書光ディスク概要VI第1章データベースとSQL 1-1データベースとは何か3身近なデータベース3なぜDBMSが重要なのか4 DBMS種類6-2データベースの構造8 RDBMSの一般的なシステム構造8表の結び构10 1-3 SQL概要13标准SQL 13 SQL文及びその种类14 SQLの基本书き込みルール15-4表の作成18表の内容の作成18データベースの作成19表の作成19表の作成(CREATE TABLE文)19命名ルール21データ型の指定22拘束の设定24-5表の削除と更新25表の削除(DROP TABLE文)25テーブル定義の更新(ALTER TABLE文)26 Shohinテーブルにデータ27を挿入練習問題30第2章クエリー基礎31 2-1 SELECT文基礎33列のクエリー33テーブルのすべての列35をクエリーして列に別名36定数を設定するクエリー38結果から重複行38を削除WHERE文に基づいてレコード41注記を選択する書き方43 2-2算術演算子と比較演算子45算術演算子45注意NULL 46比較演算子48文字列に不等号を使用する場合の注意点50比較演算子53-3-3論理演算子56 NOT演算子56 AND演算子とOR演算子58を用いた比較演算子53-3論理演算子56 AND演算子とOR演算子58をカッコで強化する60論理演算子と真値62 NULLを含む場合の真値64練習問題66第3章集約と並べ替え67-1表の集約調査質問69集約関数69計算テーブルにおけるデータの行数70 NULL以外のデータの行数71計算合計値72計算平均値74計算最大値と最小値75集約関数を用いて重複値を削除する(キーワードDISTINCT)77 3-2テーブルをグループ化する79 GROUP BY句79集約キーにNULLが含まれている場合81 WHERE句を用いる場合GROUP BYの実行結果82集約関数とGROUP BY句に関するよくあるエラー84 3-3集約結果指定条件89 HAVING句89 HAVING句の構成要素92 HAVING句に対して、WHERE句に書く条件93-4クエリー結果をソート96 ORDER BY句96昇順または降順98複数のソートキー99 NULLを指定する順序99並べ替えキーに表示用別名100 ORDER BY句で使用可能な列102列番号102練習題104第4章データ更新105 4-1データの挿入を使用しない(INSERT文の使い方)107 INSERT 107 INSERT文の基本構文108列リストの省略111 NULL 111挿入デフォルト112他の表からデータ114 4-2データをコピーする削除(DELETE文の使い方)117 DROP TABLE文とDELETE文117 DELETE文の基本構文117削除対象を指定するDELETE文(検索型DELETE)118 4-3データの更新(UPDATE文の使い方)121 UPDATE文の基本構文121条件を指定するUPDATE文(検索型UPDATE)122 NULLによる更新123複数列更新124 4-4トランザクション126トランザクション126トランザクション127 ACIDプロパティ132練習問題133第5章複雑クエリ135 5-1ビュー137ビューと表137ビューを作成する方法139ビューの制限①ビューを定義する際にORDER BY句142ビューを使用できない制限②ビューを更新143削除ビュー1475-2サブクエリ148サブクエリとビュー148サブクエリの名称151サブクエリ151サブクエリ151サブクエリの書込位置154サブクエリを使用する際の注意点1555-3サブクエリ156一般的なサブクエリとサブクエリの違い156サブクエリも集合を分割するための159結合条件であるサブクエリに必ず記載する160練習問題161第6章関数、述語、CASE式1636-1様々な関数165の関数の種類165算術関数166文字列関数170日付関数178変換関数1826-2述語186述語186述語186何が述語186 LIKE述語であるか——文字列の部分一致問合186 BETWENT述語——範囲問合せ190 IS NULL、IS NOT NULL−NULL−NULL 191 IN述語であるか否かを判定する−ORの簡便な使い方192 IN述語のパラメータとしてサブクエリを用いる193 EXIST述語198−3 CASE式202 CASE式202 CASE式の構文202 CASE式の使い方203練習問題209第7章集合演算211−7表の加減法213集合演算213表の加算とは何か法−UNION 213集合演算の注意事項216は、重複行の集合演算を含む−ALLオプション217表の共通部分−INTERSECT 218に記録された減算−EXCEPT 219−2連結を選択する(列単位で表を連結する)222連結222内連結――INNER JOIN 223外連結――OUTER JOIN 228以上の表の連結231クロス連結――CROSS JOIN 234特定の連結文と古い文法237練習問題242第8章SQL上級処理243 8-1ウィンドウ関数245ウィンドウ関数246ウィンドウ関数の文法246文法の基本的な使い方――RANK関数246 PARTION BY 249専用ウィンドウ関数の種類250ウィンドウ関数の適用範囲251をウィンドウ関数として使用する集約関数252計算移動平均254両ORDER BY 257 8-2 GROUPING演算子259を同時に合計値259 ROLLUPを計算する合計値260 GROUPING関数を同時に計算するNULLをより分かりやすくする265 CUBE——データで積み木267 GROUPING SETS——所望の積み木269練習問題270付録AインストールPostgreSQL 271付録B PostgreSQLでSQLを実行する方法278付録C練習問題解答284