Home | 簡體中文 | 繁體中文 | 雜文 | 打賞(Donations) | ITEYE 博客 | OSChina 博客 | Facebook | Linkedin | 知乎專欄 | Search | About

Netkiller Database 手札

PostgreSQL, MySQL, Oracle ...

Mr. Neo Chan, 陳景峯(BG7NYT)


中國廣東省深圳市龍華新區民治街道溪山美地
518131
+86 13113668890


文檔初創于April 6, 2008

版權聲明

轉載請與作者聯繫,轉載時請務必標明文章原始出處和作者信息及本聲明。

文檔出處:
http://netkiller.github.io
http://netkiller.sourceforge.net

微信掃瞄二維碼進入 Netkiller 微信訂閲號

QQ群:128659835 請註明“讀者”

$Date: 2013-05-21 19:01:33 +0800 (Tue, 21 May 2013) $


目錄

1. 自述
1.1. 系列文檔
1.2. 作者簡介
1.3. 寫給讀者
1.4. 文檔下載
1.5. 打賞(Donations)
1.5.1. 微信(Wechat)
1.5.2. 支付寶(Alipay)
1.5.3. PayPal Donations
1.5.4. 銀行(Bank)
I. Database Relational
1. DB-Engines - DB-Engines Ranking
2. SysBench
3. SuperSmack
4. ETL (Extract-Transform-Load)
4.1. Kettle
4.2. suro
5. 數據遷移
5.1. Apache Sqoop
6. GreenSQL
7. Database design & E-R diagram
7.1. opensource database design tools
7.2. OpenSystemArchitect
7.3. SQL Power Architect
II. Search Engine
8. Elasticsearch
8.1. 安裝 Elasticsearch
8.1.1. 單機模式 (適用於開發環境)
8.1.2. Elasticsearch Cluster
8.1.3. 負載均衡配置
8.1.4. 安裝指定版本的 Elasticsearch
8.1.5. Plugin
8.1.5.1. elasticsearch-analysis-ik
8.1.5.2. elasticsearch-analysis-pinyin
8.2. 管理
8.2.1. 查看索引
8.2.2. 節點健康狀態
8.2.3. 節點http狀態
8.2.4. 查看master節點
8.2.5. 查看索引的節點分佈
8.2.6. 索引的開啟與關閉
8.2.6.1. _open
8.2.6.2. _close
8.3. 文檔API
8.3.1. 快速上手
8.3.2. 寫入 PUT/POST
8.3.3. 獲取 GET
8.3.3.1. _source
8.3.4. 檢查記錄是否存在
8.3.5. 刪除 Delete
8.3.6. 參數
8.3.6.1. pretty 格式化 json
8.4. 搜索
8.4.1. URL 搜索
8.4.2. 分頁
8.5. Query DSL
8.5.1. match 匹配
8.5.2. multi_match 多欄位匹配
8.5.3. Query bool 布爾條件
8.5.3.1. must
8.5.3.2. should
8.5.3.3. must_not
8.5.4. filter 過濾
8.5.5. sort 排序
8.5.6. _source
8.5.7. highlight 高亮處理
8.6. 中文分詞插件管理
8.6.1. 通過 elasticsearch-plugin 命令安裝分詞插件
8.6.2. 手工安裝插件
8.6.3. 創建索引
8.6.4. 刪除索引
8.6.5. 配置索引分詞插件
8.6.5.1. 測試分詞效果
8.7. 映射
8.7.1. 查看 _mapping
8.7.2. 刪除 _mapping
8.7.3. 創建 _mapping
8.7.4. 更新 mapping
8.7.5. 修改 _mapping
8.7.6. 數據類型
8.7.6.1. date
8.8. Alias management 別名管理
8.8.1. 查看索引別名
8.8.2. 創建索引別名
8.8.3. 修改別名
8.8.4. 刪除別名
8.9. Example
8.9.1. 新聞資訊應用案例
8.9.2. 文章搜索案例
8.9.2.1.
8.10. Migrating MySQL Data into Elasticsearch using logstash
8.10.1. 安裝 logstash
8.10.2. 配置 logstash
8.10.3. 啟動 Logstash
8.10.4. 驗證
8.10.5. 配置模板
8.10.5.1. 全量導入
8.10.5.2. 多表導入
8.10.5.3. 通過 ID 主鍵欄位增量複製數據
8.10.5.4. 通過日期欄位增量複製數據
8.10.5.5. 指定SQL檔案
8.10.5.6. 參數傳遞
8.10.5.7. 控制返回JDBC數據量
8.10.5.8. 輸出到不同的 Elasticsearch 中
8.10.5.9. 日期格式轉換
8.10.5.10. example
8.10.6. 解決數據不對稱問題
8.10.7. 修改 Mapping
8.11. 安裝 Elasticsearch 2.3
8.11.1. RPM 安裝
8.11.2. YUM 安裝
8.11.3. 測試安裝是否正常
8.11.4. Plugin 插件管理
8.11.4.1. 手工安裝插件
8.11.4.2. plugin 命令
8.11.4.3. 插件測試
8.12. FAQ
8.12.1. Plugin [analysis-ik] is incompatible with Elasticsearch [2.3.5]. Was designed for version [2.3.4]
8.12.2. plugin [analysis-ik] is incompatible with version [5.6.1]; was designed for version [5.5.2]
8.12.3. mapper_parsing_exception: failed to parse [ctime]
8.12.4. 配置 JAVA_HOME
9. Solr
9.1. 安裝
9.2. Core Admin
9.2.1. Schema
9.3. 索引
9.3.1. Indexing a directory of "rich" files
9.3.2. Indexing Solr XML
9.3.3. Indexing JSON
9.3.4. Deleting Data
9.4. 介面
9.4.1. 查詢
9.5. FAQ
9.5.1. NOTE: Please install lsof as this script needs it to determine if Solr is listening on port 8983.
9.6. Solr 1.3.0
9.6.1. Embedded Jetty
9.6.2. Jetty
9.6.3. Tomcat
9.6.4. solr-php-client
9.6.5. multicore
9.6.6. 中文分詞
9.6.6.1. ChineseTokenizerFactory
9.6.6.2. CJK
9.6.6.3. mmseg4j
9.6.6.4. 中文分詞“庖丁解牛” Paoding Analysis
10. Nutch
11. Sphinx
12. Lucene
13. MG4J
14. PhpDig
15. Mahout
16. Apache Hbase
16.1. 安裝 Apache Hbase
16.1.1. 單機模式安裝
16.1.2. 偽分散式模式
16.1.3. 分散式模式部署
16.1.4. 運維技巧
16.2. 配置 Apache Hbase
16.2.1. hbase-env.sh
16.2.2. hbase-site.xml
16.3. Hbase Shell
16.3.1. 表操作
16.4. Web UI
16.5. FAQ
16.5.1. HBaseConfTool : Unsupported major.minor version 51.0
16.5.2. ignoring option PermSize=128m; support was removed in 8.0
17. Phoenix
17.1. 安裝 Phoenix
17.2. sqlline.py 命令行界面
17.2.1. 幫助信息
17.2.2. 創建表
17.3. SQuirreL SQL Client
18. Apache Hive
18.1. 安裝 Apache Hive
18.1.1. MySQL
18.1.2. Hadoop
18.1.3. Hive
18.1.4. 啟動 Hive
18.1.5. 訪問 Hive
18.1.6. 配置 hiveserver2
18.2. beeline
18.3. 管理 Hive
18.3.1. 表管理
18.3.1.1. 創建表
18.3.1.2. 顯示表
18.3.1.3. 刪除表
18.3.1.4. 查看表結構
18.3.1.5. 為表增加欄位
18.3.1.6. 修改表名稱
18.3.1.7. 使用已有表結構創建新表
18.3.2. 分區表
18.3.2.1. 創建分區表
18.3.2.2. 顯示分區情況
18.3.2.3. 增加分區
18.3.2.4. 向分區表導入數據
18.3.3. 視圖管理
18.3.3.1. 創建視圖
18.3.3.2. 刪除視圖
18.3.4. 數據管理
18.3.4.1. 從文本檔案導入數據
18.3.4.2. 從其他表查詢數據並創建新表
18.3.4.3. 從其他表查詢數據然後插入指定表中
18.3.4.4. 從現有表中查詢數據然後插入到新的分區表中
18.3.5. HDFS與本地檔案系統管理
18.3.5.1. HDFS 目錄遷移
18.3.5.2. 導出表數據到本地檔案
18.3.5.3. 導出到HDFS
18.3.5.4.
18.4. HiveQL - Hive查詢語言
18.4.1. JOIN 連接查詢
18.4.2. 子查詢
18.5. FAQ
18.5.1. adoop.security.authorize.AuthorizationException): User: hadoop is not allowed to impersonate anonymous
19. Apache Sqoop
19.1. 安裝 Sqoop
19.2. sqoop2-tool
19.2.1. verify
19.2.2. upgrade
19.3. sqoop2-shell
19.3.1. show version
19.3.2. set
19.3.2.1. server
19.3.2.2. 要設置可查看具體出錯信息
19.3.3. show connector
19.3.4. link
19.3.4.1. hdfs-connector
19.3.4.2. generic-jdbc-connector
19.3.5. job
19.3.5.1. create job
19.3.5.2. show job
19.3.5.3. start job
19.3.5.4. status job
19.3.6. update
19.3.6.1. link
19.4. FAQ
19.4.1. Unable to load native-hadoop library for your platform
III. MySQL
20. MySQL Server
20.1. MySQL Installation
20.1.1. Installation by apt-get under debian/ubuntu
20.1.2. Installation by source code
20.1.3. MySQL binary distribution
20.1.4. mysql-5.5.21-debian6.0-i686.deb
20.1.5. CentOS 6.2 + MySQL 5.5.25 (RPM)
20.1.6. mysql-admin
20.1.7. Installing MySQL on Linux Using the MySQL Yum Repository
20.1.7.1. MySQL 5.6
20.1.7.2. MySQL 5.7
20.1.8. Mac
20.1.9. Firewall
20.1.10. Limit 狀態
20.1.11. 使用 Btrfs 檔案系統存儲mysql數據
20.1.12. Mac OS
20.2. MariaDB
20.2.1. CentOS YUM 安裝 MariaDB
20.2.2. MariaDB Audit Plugin
20.3. Percona
20.3.1. Percona yum Repository
20.3.2. Percona XtraBackup
20.3.2.1. 安裝 XtraBackup
20.3.2.2. innobackupex
20.3.2.2.1. 備份資料庫
20.3.2.2.2. 恢復資料庫
20.3.2.3. xbstream
20.3.2.4. xtrabackup
20.3.3. Percona Toolkit - MySQL Management Software
20.4. my.cnf
20.4.1. bind-address
20.4.2. 禁用TCP/IP連結
20.4.3. 配置字符集
20.4.4. 最大連結數 max_connections
20.4.5. 預設引擎 storage-engine
20.4.6. max_allowed_packet
20.4.7. skip-name-resolve
20.4.8. timeout
20.4.9. 與複製有關的參數
20.4.9.1. 用於主庫的選項 Master
20.4.9.2. 用於從庫的選項 Slave
20.4.9.3. 逃過錯誤
20.4.10. 與 InnoDB 有關的配置項
20.4.11. EVENT 設置
20.4.12. 日誌
20.4.13. MySQL 5.7 my.cnf 實例
20.4.14. Example for my.cnf
20.5. MySQL Plugin
20.5.1. validate_password
20.5.2. MySQL Images manager
20.5.3. MySQL fifo
20.6. Replication
20.6.1. Master Slave
20.6.1.1. Master
20.6.1.2. Slave
20.6.1.3. Testing
20.6.1.4. 將現有資料庫遷移到主從結構資料庫
20.6.1.5. 主從複製安全問題
20.6.2. Master Master(主主)
20.6.2.1. Master A
20.6.2.2. Master B
20.6.2.3. 將Master A 資料庫 同步到 Master B 兩端資料庫內容保持一致
20.6.2.4. Master A - B 同步兩端資料庫
20.6.2.5. Master A 資料庫解除只讀權限
20.6.2.6. 查看主主的工作狀態
20.6.3. Semisynchronous Replication
20.6.3.1. Master
20.6.3.2. Slave 配置
20.6.3.3. 卸載插件
20.6.3.4. my.cnf
20.6.4. multi-master replication
20.6.5. multi-source replication
20.6.6. 與複製有關的問題
20.6.6.1. 主從不同步問題
20.6.6.2. mysql-bin 清理問題
20.6.6.3. 跳過 Last_Errno
20.6.6.4. 重置Slave
20.6.7. GTID
20.6.7.1. Master
20.6.7.2. Slave
20.7. MySQL Custer
20.7.1. Management node (MGM node)
20.7.2. Data node
20.7.3. SQL node
20.7.4. Starting
20.7.5. Shutdown
20.7.6. Testing
20.8. MySQL Proxy
20.8.1. Ubuntu
20.8.2. CentOS
20.8.2.1. FAQ
20.9. MySQL Router
20.9.1. 安裝 MySQL Router
20.9.2. 配置 MySQL Router
20.9.2.1. 主備配置
20.9.2.2. 負載均衡配置
20.9.3. MySQL Router , Haproxy,LVS 的選擇
20.10. SHOW COMMAND
20.10.1. 查看版本
20.10.2. status
20.10.2.1. show status
20.10.2.2. show master status
20.10.2.3. show slave status
20.10.2.4. show plugins
20.10.3. show processlist
20.10.4. variables
20.10.4.1. sql_mode
20.10.4.1.1. 設置 sql_mode
20.10.4.1.2. 查看 sql_mode
20.10.4.1.3. 兼容早起 MySQL 版本
20.10.4.1.4. 5.7.16
20.10.4.2. wait_timeout
20.10.4.3. table_lock_wait_timeout
20.10.4.4. low_priority_updates
20.10.4.5. character_set
20.10.4.6. datadir
20.10.4.7. plugin_dir
20.10.4.8. storage_engine
20.10.4.9. timeout
20.10.4.10. max_connections
20.10.5. binary 日誌
20.10.6. 綫程的使用情況
20.10.7. DATABASES
20.10.8. TABLE
20.10.9. 臨時表
20.10.10. 排序統計信息
20.10.11. Key 狀態
20.10.12. FUNCTION
20.10.13. PROCEDURE
20.10.14. TRIGGERS
20.10.15. EVENTS
20.10.16. 引擎(ENGINES)
20.10.17. 字符集(Collation)
20.10.18. SHOW GRANTS
20.11. Monitoring
20.11.1. Analysis and Optimization
20.11.1.1. mytop - top like query monitor for MySQL
20.11.1.2. mtop - MySQL terminal based query monitor
20.11.1.3. innotop
20.11.1.4. mysqlreport - A friendly report of important MySQL status values
20.11.1.5. mysqltuner - MySQL configuration assistant
20.11.2. Munin
20.11.3. Cacti
20.11.4. Monitoring MySQL with SNMP
21. Client and Utility Programs
21.1. mysql - the MySQL command-line tool
21.1.1. ~/.my.cnf
21.1.2. 屏幕輸出到檔案
21.1.3. 終端編碼
21.1.4. Unix Socket
21.1.5. 重定向巧用
21.1.6. --sigint-ignore 忽略 Ctrl + C
21.2. mysqldump - a database backup program
21.2.1. 備份資料庫,無結構,只有數據
21.2.2. 備份資料庫結構(不備份數據)
21.2.3. 使用完整的insert插入數據
21.2.4. --extended-insert / --skip-extended-insert
21.2.5. --skip-lock-tables
21.2.6. --skip-add-locks
21.2.7. --where
21.2.8. 註釋信息--comments /--skip-comments
21.3. mysqladmin - client for administering a MySQL server
21.3.1. reload
21.3.2. 更改密碼
21.3.3. status
21.3.4. process list
21.4. myisamchk — MyISAM Table-Maintenance Utility
21.5. mysqlcheck — A Table Maintenance and Repair Program
21.6. mysqlslap - load emulation client
21.7. mysqldumpslow - Parse and summarize the MySQL slow query log.
21.8. mysql log
22. Database Administration
22.1. User Account Management
22.1.1. Create User
22.1.2. Drop User
22.1.3. Rename User
22.1.4. SET PASSWORD
22.2. Access Privilege System
22.2.1. SHOW GRANTS
22.2.2. show privileges
22.2.3. Grant privileges
22.2.4. Revoke privileges
22.2.5. Show Privileges
22.2.6. MAX_QUERIES_PER_HOUR/MAX_UPDATES_PER_HOUR
22.2.7. Table Privileges
22.2.8. Column Privileges
22.3. Maintenance 資料庫維護
22.3.1. CHECK 檢查表
22.3.2. ANALYZE 分析表
22.3.3. CHECKSUM
22.3.4. OPTIMIZE 優化表
22.3.5. REPAIR 修復
22.4. INFORMATION_SCHEMA
22.4.1. 查詢表欄位
22.5. Backup and Recovery
22.5.1. Import / Export
22.5.1.1. Export(Backup)
22.5.1.2. Import(Recovery)
22.5.1.3. xml
22.5.1.4. 備份表數據
22.5.1.5. source
22.5.1.6. 使用 mysqlhotcopy 備份 MyISAM 引擎的資料庫
22.5.1.7. AutoMySQLBackup
22.5.1.8. xtrabackup - Open source backup tool for InnoDB and XtraDB.
22.5.1.8.1. Percona yum Repository
22.5.1.8.2. Creating an Incremental Backup
22.5.2. Snapshot Backup
22.5.2.1. LVM Snapshot
22.5.2.2. Btrfs Snapshot
23. DDL - Data Definition Language
23.1. 資料庫管理(Database)
23.1.1. create
23.1.2. drop
23.1.3. Alter
23.1.4. Rename
23.1.5. CHARACTER
23.1.6. show create database
23.2. 表管理(Table)
23.2.1. 數據類型
23.2.1.1. SET 集合類型
23.2.2. create table ... select
23.2.3. modifiy table
23.2.4. TEMPORARY Table
23.2.5. Collate
23.2.6. CHARACTER
23.2.7. DEFAULT
23.2.7.1. AUTO_INCREMENT
23.2.7.2. 表存儲位置(DATA DIRECTORY)
23.2.8. KEY
23.2.8.1. PRIMARY KEY
23.2.9. COMMENT
23.2.10. Engine 存儲引擎
23.2.10.1. 顯示當前資料庫支持引擎
23.2.10.2. 切換引擎
23.2.10.3. FEDERATED
23.2.10.4. BLACKHOLE
23.2.10.5. ARCHIVE
23.2.10.6. CSV
23.3. Partitioning
23.3.1. RANGE
23.3.2. LIST
23.3.3. HASH
23.3.3.1. LINEAR HASH
23.3.4. KEY分區
23.3.5. Subpartitioning
23.3.6. 分區管理
23.3.6.1. 新增分區
23.3.6.2. 刪除分區
23.3.6.3. 重建分區
23.3.6.4. 分區維護
23.3.7. EXPLAIN PARTITIONS
23.3.8. SHOW CREATE TABLE
23.3.9. INFORMATION_SCHEMA.partitions 表
23.3.10. 分區數據操作
23.4. Index
23.4.1. SHOW INDEX
23.4.2. CREATE INDEX
23.4.3. DROP INDEX
23.4.4. rebuild
23.5. 外鍵(Foreign Key)
23.5.1. FOREIGN KEY (RESTRICT)
23.6. 視圖(View)
23.7. 存儲過程(PROCEDURE)
23.7.1. 存儲程序
23.7.2. 函數
23.8. 觸發器(Trigger)
23.8.1. create trigger
23.8.1.1. Update 更新出發
23.8.1.2. Delete 刪除出發
23.8.1.3. Insert 插入出發
23.8.2. drop trigger
23.8.3. show triggers
23.8.4. EXAMPLE
23.8.4.1. BEFORE/AFTER
23.8.4.2. UUID
23.8.4.3. CALL PROCEDURE
23.9. 事件調度器(EVENT)
23.9.1. 啟用 EVENT
23.9.2. 創建 EVENT
23.9.3. 禁用/啟用
23.9.4. show events
24. DML (Data Manipulation Language)
24.1. INSERT
24.1.1. INSERT INTO ... SELECT
24.1.2. INSERT IGNORE
24.1.3. INSERT...ON DUPLICATE KEY UPDATE
24.2. REPLACE
24.3. DELETE
24.3.1. 刪除重複數據
25. SQL Statement Syntax
25.1. DISTINCT
25.2. group by
25.3. HAVING
25.4. REGEXP
25.5. IN / NOT IN
25.6. ALL / Any
25.7. exists, not exists
25.8. UNION
25.8.1. UNION ALL
25.9. OUTFILE/LOAD DATA INFILE
25.9.1. Export data to CSV from MySQL
25.9.2. Import data from CSV file.
25.10. CASE Syntax
25.11. MySQL 專有命令
25.11.1. SQL_NO_CACHE
25.11.2. SIGNAL Syntax
25.12. SQL 92
26. Functions and Operators
26.1. COUNT
26.2. group_concat() 列傳行
26.3. UUID()
26.4. String
26.4.1. LEFT/RIGHT
26.4.2. RPAD/LPAD
26.4.3. CONCAT
26.4.4. CONCAT_WS
26.4.5. 連結所有欄位
26.4.6. GROUP_CONCAT
26.4.7. replace
26.4.8. SUBSTRING
26.4.9. SUBSTRING_INDEX
26.4.10. AES_ENCRYPT / AES_DECRYPT
26.5. Date and Time
26.5.1. year/month/day hour:minite:second
26.5.2. Unix time
26.5.3. DATE_FORMAT
26.5.4. DATE_SUB/DATE_ADD
26.5.4.1. DATE_ADD
26.5.5. datediff / timediff
26.6. 數值函數
26.6.1. cast 類型轉換
26.6.2. truncate 保留小數位數
26.6.3. MOD 求余
26.7. Control Flow Functions
27. DCL (Data Control Language)
27.1. 鎖
27.1.1. 共享鎖
27.1.2. 排他鎖
27.1.3. 鎖
27.1.3.1. 表的加鎖與解鎖
27.1.3.2. 禁止查詢
27.1.4. 鎖等待與超時
27.1.4.1. 超時設置
27.1.4.2. select for update nowait
27.2. 事務處理和鎖定語句
27.2.1. 事務隔離級別
27.2.2. 事務所用到的表
27.2.3. 解決更新衝突
27.2.4. SAVEPOINT
28. Optimization
28.1. 打開表的數量
28.2. Buffering and Caching
28.2.1. Query Cache SELECT Options
28.3. where 優化
28.4. SHOW PROFILE Syntax SQL性能分析器
28.5. PROCEDURE ANALYSE()
29. MySQL Connectors
29.1. JDBC
29.2. ODBC
29.3. MySQL native driver for PHP - mysqlnd
29.4. python-mysqldb
30. MySQL GUI/Web Manager
30.1. HeidiSQL
30.2. Toad for MySQL Freeware
30.3. phpMyAdmin - MySQL web administration tool
30.4. Maatkit Essential command-line utilities for MySQL
31. Miscellaneous
31.1. Multi-Master Replication Manager for MySQL
31.2. MHA
31.3. HandlerSocket
31.4. Maatkit
31.5. Mroonga
31.6. Amoeba
32. FAQ
32.1. Reset root password 重置MySQL root密碼
32.2. 資料庫內容替換
32.3. 查看錯誤代碼
32.3.1. ERROR 1153 (08S01) at line 3168: Got a packet bigger than 'max_allowed_packet' bytes
32.3.2. ERROR 1129 (00000): Host 'XXXXXX' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
32.4. 臨時表是否需要建索引
32.5. Kill 腳本
32.6. ERROR 1503 (HY000): A PRIMARY KEY must include all columns in the table's partitioning function
32.7. ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
32.8. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
32.9. 重新整理AUTO_INCREMENT欄位
32.10. 轉換 latin1 到 UTF-8
32.11. this is incompatible with sql_mode=only_full_group_by
32.12. [Warning] Changed limits: max_open_files: 5000 (requested 20480)
32.13. ERROR 1364: 1364: Field 'id' doesn't have a default value
IV. NoSQL
33. Redis
33.1. Redis 安裝
33.1.1. CentOS 7
33.1.2. CentOS 6
33.1.2.1. 主從同步
33.1.2.2. Sentinel
33.1.3. Ubuntu
33.1.4. 源碼編譯安裝
33.1.5. Test Redis
33.2. /etc/redis.conf
33.2.1. 密碼認證
33.2.2. maxmemory-policy TTL 過期策略配置
33.3. redis-cli - Command-line client to redis-server
33.3.1. 命令參數
33.3.1.1. password
33.3.1.2. raw
33.3.2. --latency Enter a special mode continuously sampling latency.
33.3.3. auth
33.3.4. MONITOR
33.3.5. info
33.3.6. save/bgsave/lastsave
33.3.7. config
33.3.8. keys
33.3.9. 字元串操作
33.3.9.1. set/get/del
33.3.9.2. setnx
33.3.10. expire/ttl
33.3.11. 獲取 key 類型
33.3.12. LIST 數據類型
33.3.13. set 無序字符集合
33.3.14. zset (有序集合)
33.3.15. Pub/Sub 訂閲與發佈
33.3.16. flushdb 清空 Redis 數據
33.4. redis-benchmark 測試工具
33.5. Redis Cluster
33.6. Redis 通信協議
33.6.1. 切換DB
33.6.2. 監控
33.7. phpRedisAdmin
33.8. Redis 開發
33.8.1. 消息訂閲與發佈
33.9. A fast, light-weight proxy for memcached and redis
33.10. FAQ
33.10.1. 清空資料庫
33.10.2. (error) MISCONF Redis is configured to save RDB snapshots
34. MongoDB
34.1. Install 安裝MongoDB
34.1.1. Quickstart
34.1.1.1. 二進制tar包安裝
34.1.1.2. Ubuntu MongoDB
34.1.1.3. CentOS MongoDB
34.1.1.4. 從官網安裝最新版本的 MongoDB 3.4
34.1.1.4.1. Server
34.1.1.4.2. Client
34.1.1.4.3. 工具
34.1.1.5. MongoDB + Hadoop
34.1.2. Replication
34.1.2.1. Master
34.1.2.2. Slave
34.1.2.3. 測試
34.1.3. Drivers
34.1.3.1. Using MongoDB in PHP
34.2. 命令工具
34.2.1. mongo - MongoDB Shell
34.2.1.1. eval
34.2.1.2. help
34.2.1.3. 登陸認證
34.2.2. mongodump - Backup
34.2.2.1. 遠程備份
34.2.2.2. 本地備份
34.2.3. mongorestore
34.2.3.1. 遠程回覆
34.2.3.2. 本地恢復
34.2.3.3. filter
34.2.4. mongostat
34.2.5. mongotop
34.2.6. mongofiles - Browse and modify a GridFS filesystem.
34.2.6.1. list 瀏覽檔案
34.2.6.2. put 上傳檔案
34.2.6.3. get 下載
34.2.6.4. delete 刪除
34.3. MongoDB Shell
34.3.1. show 查看命令
34.3.1.1. show dbs
34.3.1.2. show collections
34.3.1.3. show users
34.3.1.4. show profile
34.3.2. 切換資料庫
34.3.3. save
34.3.4. insert
34.3.5. update
34.3.6. remove
34.3.6.1. 刪除條件使用 _id
34.3.7. 刪除 collection
34.3.8. count()
34.3.9. group()
34.3.10. find() MongoDB 2.x
34.3.11. find() MongoDB 3.x
34.3.11.1. Query
34.3.11.2. 包含欄位
34.3.11.3. 排除欄位
34.3.11.4. sort()
34.3.12. 管道操作
34.3.13. shutdownServer
34.3.14. aggregate
34.3.14.1. project
34.3.14.1.1. $split
34.3.14.1.2. substr
34.3.14.2. groupby + sum
34.4. Mongo Admin UI
34.4.1. RockMongo
34.4.2. MongoVUE
34.5. Map-Reduce
34.5.1. 使用 Map-Reduce 統計Web 伺服器 access.log 日誌檔案
37. Cassandra
37.1. Getting Started
37.1.1. Downloading and Installation
37.1.2. Running Cassandra
37.1.3. cli tool
37.1.4. Testing Cassandra
37.2. Configure Cassandra
37.2.1. Envionment variables
37.2.2. log4j.properties
37.2.3. storage-conf.xml
37.3. Keyspace
37.3.1. Schema
37.3.1.1. Keyspace
37.3.1.2. Column family
37.3.1.2.1. Name
37.3.1.2.2. Column
37.3.1.2.3. Super column
37.3.1.2.4. Sorting
37.3.2. Keyspace example
37.4. Cluster
37.4.1. Running a cluster
37.4.2. Running a single node
37.4.3. nodetool
38. Hypertable
38.1. Hypertable 安裝
38.1.1. Hypertable standalone 單機安裝
38.1.2. Hypertable on HDFS(hadoop) 安裝
38.1.3. MapR
38.1.4. Ceph
38.1.5. 檢驗安裝
38.2. Code examples
38.2.1. PHP
38.3. HQL
38.3.1. namespace 命名空間管理
38.3.2. Table 表
38.4. FAQ
38.4.1. 切換 DFS Broker
39. CouchBase
39.1. 安裝 CouchBase
39.1.1. Getting Started with Couchbase on PHP
39.2. couchbase 命令
39.2.1. couchbase-cli
40. Memcached
40.1. 安裝 Memcached
40.1.1. CentOS 下編譯
40.1.2. Ubuntu 下編譯安裝
40.1.3. debian/ubuntu
40.1.4. yum install
40.2. Memcached 代理
40.2.1. moxi
40.2.2. memagent
41. RethinkDB
42. TokyoCabinet/Tyrant
43. Flare
44. Voldemort
45. LevelDB
46. HyperDex
47. LeoFS
V. PostgreSQL
48. PostgreSQL 安裝
48.1. Ubuntu 12.04.1 LTS 安裝
48.2. YUM 預設源安裝
48.3. PostgreSQL 官方 YUM 源安裝
48.3.1. 9.2
48.3.2. 9.3
48.3.3. 9.4
48.3.4. 9.6
48.3.5. PostgreSQL 10
48.4. PostgreSQL 配置
48.4.1. postgresql.conf
48.4.2. pg_hba.conf
48.5. 創建dba用戶
49. PostgreSQL 命令
49.1. psql - PostgreSQL interactive terminal
50. Database Administration
50.1. User Account Management
50.1.1. Create User
50.1.2. Drop User
50.1.3. Rename User
50.1.4. SET PASSWORD
50.2. Access Privilege System
50.2.1. SHOW GRANTS
50.2.2. show privileges
50.2.3. Grant privileges
50.2.4. Revoke privileges
50.2.5. Show Privileges
50.2.6. MAX_QUERIES_PER_HOUR/MAX_UPDATES_PER_HOUR
50.2.7. Table Privileges
50.2.8. Column Privileges
50.3. Maintenance 資料庫維護
50.3.1. CHECK 檢查表
50.3.2. ANALYZE 分析表
50.3.3. CHECKSUM
50.3.4. OPTIMIZE 優化表
50.3.5. REPAIR 修復
50.4. INFORMATION_SCHEMA
50.4.1. 查詢表欄位
50.5. Backup and Recovery
50.5.1. Import / Export
50.5.1.1. Export(Backup)
50.5.1.2. Import(Recovery)
50.5.1.3. xml
50.5.1.4. 備份表數據
50.5.1.5. source
50.5.1.6. 使用 mysqlhotcopy 備份 MyISAM 引擎的資料庫
50.5.1.7. AutoMySQLBackup
50.5.1.8. xtrabackup - Open source backup tool for InnoDB and XtraDB.
50.5.1.8.1. Percona yum Repository
50.5.1.8.2. Creating an Incremental Backup
50.5.2. Snapshot Backup
50.5.2.1. LVM Snapshot
50.5.2.2. Btrfs Snapshot
51. DDL - Data Definition Language
51.1. 資料庫管理(Database)
51.1.1. create
51.1.2. drop
51.1.3. Alter
51.1.4. Rename
51.1.5. CHARACTER
51.1.6. show create database
51.2. 表管理(Table)
51.2.1. 數據類型
51.2.1.1. SET 集合類型
51.2.2. create table ... select
51.2.3. modifiy table
51.2.4. TEMPORARY Table
51.2.5. Collate
51.2.6. CHARACTER
51.2.7. DEFAULT
51.2.7.1. AUTO_INCREMENT
51.2.7.2. 表存儲位置(DATA DIRECTORY)
51.2.8. KEY
51.2.8.1. PRIMARY KEY
51.2.9. COMMENT
51.2.10. Engine 存儲引擎
51.2.10.1. 顯示當前資料庫支持引擎
51.2.10.2. 切換引擎
51.2.10.3. FEDERATED
51.2.10.4. BLACKHOLE
51.2.10.5. ARCHIVE
51.2.10.6. CSV
51.3. Partitioning
51.3.1. RANGE
51.3.2. LIST
51.3.3. HASH
51.3.3.1. LINEAR HASH
51.3.4. KEY分區
51.3.5. Subpartitioning
51.3.6. 分區管理
51.3.6.1. 新增分區
51.3.6.2. 刪除分區
51.3.6.3. 重建分區
51.3.6.4. 分區維護
51.3.7. EXPLAIN PARTITIONS
51.3.8. SHOW CREATE TABLE
51.3.9. INFORMATION_SCHEMA.partitions 表
51.3.10. 分區數據操作
51.4. Index
51.4.1. SHOW INDEX
51.4.2. CREATE INDEX
51.4.3. DROP INDEX
51.4.4. rebuild
51.5. 外鍵(Foreign Key)
51.5.1. FOREIGN KEY (RESTRICT)
51.6. 視圖(View)
51.7. 存儲過程(PROCEDURE)
51.7.1. 存儲程序
51.7.2. 函數
51.8. 觸發器(Trigger)
51.8.1. create trigger
51.8.1.1. Update 更新出發
51.8.1.2. Delete 刪除出發
51.8.1.3. Insert 插入出發
51.8.2. drop trigger
51.8.3. show triggers
51.8.4. EXAMPLE
51.8.4.1. BEFORE/AFTER
51.8.4.2. UUID
51.8.4.3. CALL PROCEDURE
51.9. 事件調度器(EVENT)
51.9.1. 啟用 EVENT
51.9.2. 創建 EVENT
51.9.3. 禁用/啟用
51.9.4. show events
52. DML (Data Manipulation Language)
52.1. INSERT
52.1.1. INSERT INTO ... SELECT
52.1.2. INSERT IGNORE
52.1.3. INSERT...ON DUPLICATE KEY UPDATE
52.2. REPLACE
52.3. DELETE
52.3.1. 刪除重複數據
53. SQL Statement Syntax
53.1. DISTINCT
53.2. group by
53.3. HAVING
53.4. REGEXP
53.5. IN / NOT IN
53.6. ALL / Any
53.7. exists, not exists
53.8. UNION
53.8.1. UNION ALL
53.9. OUTFILE/LOAD DATA INFILE
53.9.1. Export data to CSV from MySQL
53.9.2. Import data from CSV file.
53.10. CASE Syntax
53.11. MySQL 專有命令
53.11.1. SQL_NO_CACHE
53.11.2. SIGNAL Syntax
53.12. SQL 92
54. Functions and Operators
54.1. COUNT
54.2. group_concat() 列傳行
54.3. UUID()
54.4. String
54.4.1. LEFT/RIGHT
54.4.2. RPAD/LPAD
54.4.3. CONCAT
54.4.4. CONCAT_WS
54.4.5. 連結所有欄位
54.4.6. GROUP_CONCAT
54.4.7. replace
54.4.8. SUBSTRING
54.4.9. SUBSTRING_INDEX
54.4.10. AES_ENCRYPT / AES_DECRYPT
54.5. Date and Time
54.5.1. year/month/day hour:minite:second
54.5.2. Unix time
54.5.3. DATE_FORMAT
54.5.4. DATE_SUB/DATE_ADD
54.5.4.1. DATE_ADD
54.5.5. datediff / timediff
54.6. 數值函數
54.6.1. cast 類型轉換
54.6.2. truncate 保留小數位數
54.6.3. MOD 求余
54.7. Control Flow Functions
55. PostgreSQL GUI
55.1. pgAdmin III
55.2. phpPgAdmin
55.3. Monitoring
55.3.1. PgBadger
55.4. pgModeler - PostgreSQL Database Modeler
56. Barman Backup & recovery for PostgreSQL
57. pgbouncer - lightweight connection pooler for PostgreSQL
57.1. 安裝 pgbouncer
57.1.1. Ubuntu
57.1.2. CentOS
57.2. 配置 pgbouncer
58. Foreign data wrappers
59. Barman for PostgreSQL
60. Connector
60.1. Pomm
61. Replication
61.1. Bucardo
62. FAQ
62.1. Reset root password 重置MySQL root密碼
62.2. 資料庫內容替換
62.3. 查看錯誤代碼
62.3.1. ERROR 1153 (08S01) at line 3168: Got a packet bigger than 'max_allowed_packet' bytes
62.3.2. ERROR 1129 (00000): Host 'XXXXXX' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
62.4. 臨時表是否需要建索引
62.5. Kill 腳本
62.6. ERROR 1503 (HY000): A PRIMARY KEY must include all columns in the table's partitioning function
62.7. ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
62.8. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
62.9. 重新整理AUTO_INCREMENT欄位
62.10. 轉換 latin1 到 UTF-8
62.11. this is incompatible with sql_mode=only_full_group_by
62.12. [Warning] Changed limits: max_open_files: 5000 (requested 20480)
62.13. ERROR 1364: 1364: Field 'id' doesn't have a default value
VI. Oracle
63. Oracle 12c 安裝可
63.1. Server 安裝
63.2. Desktop 安裝
63.3. Oracle Net Services Configuration
63.3.1. Listener configuration
63.3.2. Local Net Service Name configuration
63.4. Oracle 12c Client for Windows 10
63.5. 卸載 Oracle
63.6. Linux 安裝 sqlplus
64. Privilege
64.1. Account
64.1.1. show user
64.1.2. DEFAULT_TABLESPACE
64.1.3. unlock/lock
64.2. User
64.2.1. Create user
64.2.2. Drop user
64.2.3. Alter user
64.2.4. 修改密碼
64.2.5. Reset Password 忘記密碼重置密碼
64.3. grant
64.3.1. 列出權限
64.3.2. 查看用戶權限
64.3.3. 吊銷權限
64.3.4. System Privileges 系統權限
64.3.4.1. EM 權限
64.3.4.2. Granting and Revoking SYSDBA and SYSOPER Privileges
64.3.5. Object Privileges 對象權限
64.4. Opening the Encrypted Wallet
65. 資料庫管理
65.1. lsnrctl
65.2. listener.ora
65.3. TNS 配置
65.3.1. HOST
65.3.2. SID
65.4. parameter
65.4.1. db
65.4.2. instance_name
65.4.3. service_name
65.4.4. global_name
65.4.5. db_name
65.4.6. db_domain
65.4.7. sga
65.4.8. size
65.4.9. spfile
65.4.10. cache
65.4.11. Character Set
65.5. 進程
65.6. 查看用戶
65.7. 顯示表
65.8. 顯示試圖
65.9. PROCEDURE
65.10. FUNCTION
65.11. 視圖、存儲過程、函數
65.12. 查看存儲過程原始碼
65.13. 日期時間格式
65.13.1. Date
65.13.2. 修改系統日期格式
65.13.3. TIMESTAMP
65.13.4.
65.14. 切換字符集
65.14.1. 切換到 GBK
65.14.2. 切到 UTF-8
65.14.3. 切到 AL32UTF8
65.14.4. 切換過程實例
65.15. Oracle 表空間
65.15.1. 查詢空閒表空間
65.15.2. 創建表空間
65.15.2.1. 臨時表空間
65.15.3. 更改表空間屬性
65.15.3.1. 修改表空間大小
65.15.4. 刪除表空間
66. Oracle Gui
66.1. Create instance
66.2. Oracle Net Configuration Assistant
66.3. Oracle Enterprise Manager
66.3.1. EM Configuration issue. /opt/oracle/product/11.2.0/dbhome_1/orcl.example.com_orcl not found.
66.4. Other GUI - phpOraAdmin
67. CLI
67.1. SQL*Plus
67.1.1. conn
67.1.2. startup/shutdown
67.1.2.1. startup
67.1.2.2. shutdown
67.1.3. $ORACLE_HOME/sqlplus/admin/glogin.sql
67.1.4. @運行SQL
67.1.5. 連結資料庫
67.2. exp/imp
67.2.1. exp
67.2.2. imp
67.2.2.1. A用戶導出B用戶導入
67.3. expdp/impdp
67.3.1. expdp
67.3.2. impdp
67.3.3. 數據泵演示
67.3.4. 查看dmp檔案的表空間
67.4. RMAN
67.4.1. 資料庫模式
67.4.2. 完全備份
67.4.3. 增量備份
67.4.4. 恢復資料庫
67.4.5. 是用tar打包rman檔案
67.4.6. 打包 rman 備份檔案
68. DDL
68.1. 欄位類型
68.1.1. Date
68.1.2. TIMESTAMP
68.2. 索引
68.3. 表
68.3.1.
68.3.2. 約束檢查
68.4. SEQUENCE 序列
68.4.1.
69. 程序包
69.1. 執行包中的過程
70. 資料庫連結
71. Oracle 監控
71.1. Oracle日誌的路徑
71.2. SQL 日誌監控
71.2.1. 查詢性能分析
71.2.2. IO性能分析
71.3. session
71.4. SQL Monitoring Report
72. Installing Oracle Database
72.1. Installing Oracle Database 10g Release 2 on Linux x86
72.2. 11gR2
72.3. Installing Oracle Client 11g
72.4. Silence Install - Database
72.4.1. Response File
72.4.2. OS 配置腳本
72.4.3. 運行 runInstaller
72.5. Silence Install - Client
72.6. oracle 817 script
72.7. Script for automatic startup on boot
72.8. Run level shell script to start Oracle 10g services on RedHat Enterprise Linux (RHAS 4)
73. FAQ
73.1. Reset root password 重置MySQL root密碼
73.2. 資料庫內容替換
73.3. 查看錯誤代碼
73.3.1. ERROR 1153 (08S01) at line 3168: Got a packet bigger than 'max_allowed_packet' bytes
73.3.2. ERROR 1129 (00000): Host 'XXXXXX' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
73.4. 臨時表是否需要建索引
73.5. Kill 腳本
73.6. ERROR 1503 (HY000): A PRIMARY KEY must include all columns in the table's partitioning function
73.7. ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
73.8. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
73.9. 重新整理AUTO_INCREMENT欄位
73.10. 轉換 latin1 到 UTF-8
73.11. this is incompatible with sql_mode=only_full_group_by
73.12. [Warning] Changed limits: max_open_files: 5000 (requested 20480)
73.13. ERROR 1364: 1364: Field 'id' doesn't have a default value

表格清單

27.1. 更新丟失演示
27.2. 防止更新丟失加鎖演示

範例清單

8.1. Elasticsearch master / slave
9.1. Solr - schema.xml
9.2. /etc/profile.d/java.sh
20.1. my.cnf
20.2. my.cnf
20.3. my.cnf
23.1. BEFORE/AFTER
23.2. uuid()
25.1. SQL ANY example
28.1. SQL_CACHE 測試
28.2. SHOW PROFILE Syntax
34.1. MongoDB Test
34.2. Using MongoDB in PHP
35.1. Oracle 字符集切換實例
35.2. 創建表空間實例
37.1. Twitter
37.2. Twissandra
40.1. /etc/init.d/memcached
48.1. Example for /var/lib/pgsql/10/data/pg_hba.conf
51.1. BEFORE/AFTER
51.2. uuid()
53.1. SQL ANY example
57.1. /etc/pgbouncer/pgbouncer.ini
65.1. Oracle 字符集切換實例
65.2. 創建表空間實例
67.1. expdp
67.2. impdp
67.3. full backup
68.1.
70.1. DB LINK