読者です 読者をやめる 読者になる 読者になる

MySQLマニュアル、5.6と5.7の違い(Level 2)

mysql manual

この記事は、2015年「MySQLマニュアルを読む」アドベントカレンダーの22日目です.

 昨日の日記では、MySQLマニュアルのもくじより、レベル1(章レベル)の相違点について紹介しました。
今日は、その続きで、レベル2(節レベル)の相違を見ていきます。
なお、ここで章番号は、MySQL 5.7 マニュアルの章番号で書きます(MySQL 5.6 のマニュアルではなく)。


まず第1章General Information より、 1.5 に新たな節が追加されています。
1.5 Server and Status Variables and Options Added, Deprecated, or Removed in MySQL 5.7
MySQL 5.7 では多くの変数類(サーバ変数、ステータス変数、オプション)が変更になっています。過去の悪しきしがらみとの決別をようやくこのバージョンで決断したな、と評価できるところもあり、そんな情報がここにまとめられています。

続いて、11章と12章。MySQL 5.7 でJSON対応したのを受けて、各章に JSON型についての説明および、JSON関係の関数についての説明の節が追加されました。
11.6 The JSON Data Type
12.16 JSON Functions


14章。細かいことですが、14.6節が、従来の「InnoDB Table Compression」から「InnoDB Table and Page Compression」へと変更されています。圧縮が、テーブルだけでなくページも対象に加わったということでしょうか(中身はまだ読んでない)。
14.6 InnoDB Table and Page Compression

17.1は、表現上の変更なので、良いでしょう。
(Replication Configuration から Configuring Replication へ)

18章の前にあった MySQL Cluster(NDB)の章が除外されたので、18章から21章まで、MySQL 5.6マニュアルの章とひとつずつずれます。(MySQL 5.6 マニュアルでは 19章から22章)

21章 INFORMATION_SCHEMA の章では、1節が追加され、2節が除去されています。

追加:20.8 The INFORMATION_SCHEMA FILES Table
除外:旧21.30 INFORMATION_SCHEMA Tables for MySQL Cluster
除外:旧21.31 Thread Pool INFORMATION_SCHEMA Tables

22章が新たに追加されたのは機能の日記のとおり。sysスキーマについての章です。
(つまりMySQL 5.6 と比べて、章は、1増1減なので、トータルで26個の章から構成されているところは、結果として変わりません)


こんな感じ。
sysスキーマJSONの、章または節レベルでの情報追加が、やはり MySQL 5.7 の「ウリ」として、マニュアルでも目立っていますね。

MySQLマニュアルのもくじ(節レベル)

1 General Information 
    1.1 About This Manual 
    1.2 Typographical and Syntax Conventions 
    1.3 Overview of the MySQL Database Management System 
    1.4 What Is New in MySQL 5.6 
    1.5 MySQL Information Sources 
    1.6 How to Report Bugs or Problems 
    1.7 MySQL Standards Compliance 
    1.8 Credits 
2 Installing and Upgrading MySQL 
    2.1 General Installation Guidance 
    2.2 Installing MySQL on Unix/Linux Using Generic Binaries 
    2.3 Installing MySQL on Microsoft Windows 
    2.4 Installing MySQL on OS X 
    2.5 Installing MySQL on Linux 
    2.6 Installing MySQL Using Unbreakable Linux Network (ULN) 
    2.7 Installing MySQL on Solaris and OpenSolaris 
    2.8 Installing MySQL on FreeBSD 
    2.9 Installing MySQL from Source 
    2.10 Postinstallation Setup and Testing 
    2.11 Upgrading or Downgrading MySQL 
    2.12 Environment Variables 
    2.13 Perl Installation Notes 
3 Tutorial 
    3.1 Connecting to and Disconnecting from the Server 
    3.2 Entering Queries 
    3.3 Creating and Using a Database 
    3.4 Getting Information About Databases and Tables 
    3.5 Using mysql in Batch Mode 
    3.6 Examples of Common Queries 
    3.7 Using MySQL with Apache 
4 MySQL Programs 
    4.1 Overview of MySQL Programs 
    4.2 Using MySQL Programs 
    4.3 MySQL Server and Server-Startup Programs 
    4.4 MySQL Installation-Related Programs 
    4.5 MySQL Client Programs 
    4.6 MySQL Administrative and Utility Programs 
    4.7 MySQL Program Development Utilities 
    4.8 Miscellaneous Programs 
5 MySQL Server Administration 
    5.1 The MySQL Server 
    5.2 MySQL Server Logs 
    5.3 Running Multiple MySQL Instances on One Machine 
    5.4 Tracing mysqld Using DTrace 
6 Security 
    6.1 General Security Issues 
    6.2 The MySQL Access Privilege System 
    6.3 MySQL User Account Management 
7 Backup and Recovery 
    7.1 Backup and Recovery Types 
    7.2 Database Backup Methods 
    7.3 Example Backup and Recovery Strategy 
    7.4 Using mysqldump for Backups 
    7.5 Point-in-Time (Incremental) Recovery Using the Binary Log 
    7.6 MyISAM Table Maintenance and Crash Recovery 
8 Optimization 
    8.1 Optimization Overview 
    8.2 Optimizing SQL Statements 
    8.3 Optimization and Indexes 
    8.4 Optimizing Database Structure 
    8.5 Optimizing for InnoDB Tables 
    8.6 Optimizing for MyISAM Tables 
    8.7 Optimizing for MEMORY Tables 
    8.8 Understanding the Query Execution Plan 
    8.9 Controlling the Query Optimizer 
    8.10 Buffering and Caching 
    8.11 Optimizing Locking Operations 
    8.12 Optimizing the MySQL Server 
    8.13 Measuring Performance (Benchmarking) 
    8.14 Examining Thread Information 
9 Language Structure 
    9.1 Literal Values 
    9.2 Schema Object Names 
    9.3 Keywords and Reserved Words 
    9.4 User-Defined Variables 
    9.5 Expression Syntax 
    9.6 Comment Syntax 
10 Globalization 
    10.1 Character Set Support 
    10.2 Setting the Error Message Language 
    10.3 Adding a Character Set 
    10.4 Adding a Collation to a Character Set 
    10.5 Character Set Configuration 
    10.6 MySQL Server Time Zone Support 
    10.7 MySQL Server Locale Support 
11 Data Types 
    11.1 Data Type Overview 
    11.2 Numeric Types 
    11.3 Date and Time Types 
    11.4 String Types 
    11.5 Extensions for Spatial Data 
    11.6 Data Type Default Values 
    11.7 Data Type Storage Requirements 
    11.8 Choosing the Right Type for a Column 
    11.9 Using Data Types from Other Database Engines 
12 Functions and Operators 
    12.1 Function and Operator Reference 
    12.2 Type Conversion in Expression Evaluation 
    12.3 Operators 
    12.4 Control Flow Functions 
    12.5 String Functions 
    12.6 Numeric Functions and Operators 
    12.7 Date and Time Functions 
    12.8 What Calendar Is Used By MySQL? 
    12.9 Full-Text Search Functions 
    12.10 Cast Functions and Operators 
    12.11 XML Functions 
    12.12 Bit Functions and Operators 
    12.13 Encryption and Compression Functions 
    12.14 Information Functions 
    12.15 Spatial Analysis Functions 
    12.16 Functions Used with Global Transaction IDs 
    12.17 MySQL Enterprise Encryption Functions 
    12.18 Miscellaneous Functions 
    12.19 Functions and Modifiers for Use with GROUP BY Clauses 
    12.20 Precision Math 
13 SQL Statement Syntax 
    13.1 Data Definition Statements 
    13.2 Data Manipulation Statements 
    13.3 MySQL Transactional and Locking Statements 
    13.4 Replication Statements 
    13.5 SQL Syntax for Prepared Statements 
    13.6 MySQL Compound-Statement Syntax 
    13.7 Database Administration Statements 
    13.8 MySQL Utility Statements 
14 The InnoDB Storage Engine 
    14.1 Introduction to InnoDB 
    14.2 InnoDB Concepts and Architecture 
    14.3 InnoDB Configuration 
    14.4 InnoDB Tablespace Management 
    14.5 InnoDB Table Management 
    14.6 InnoDB Table Compression 
    14.7 InnoDB File-Format Management 
    14.8 InnoDB Row Storage and Row Formats 
    14.9 InnoDB Disk I/O and File Space Management 
    14.10 InnoDB and Online DDL 
    14.11 InnoDB Startup Options and System Variables 
    14.12 InnoDB INFORMATION_SCHEMA Tables 
    14.13 InnoDB Integration with MySQL Performance Schema 
    14.14 InnoDB Monitors 
    14.15 InnoDB Backup and Recovery 
    14.16 InnoDB and MySQL Replication 
    14.17 InnoDB Integration with memcached 
    14.18 InnoDB Troubleshooting 
15 Alternative Storage Engines 
    15.1 Setting the Storage Engine 
    15.2 The MyISAM Storage Engine 
    15.3 The MEMORY Storage Engine 
    15.4 The CSV Storage Engine 
    15.5 The ARCHIVE Storage Engine 
    15.6 The BLACKHOLE Storage Engine 
    15.7 The MERGE Storage Engine 
    15.8 The FEDERATED Storage Engine 
    15.9 The EXAMPLE Storage Engine 
    15.10 Other Storage Engines 
    15.11 Overview of MySQL Storage Engine Architecture 
16 High Availability and Scalability 
    16.1 Using MySQL within an Amazon EC2 Instance 
    16.2 Using ZFS Replication 
    16.3 Using MySQL with memcached 
17 Replication 
    17.1 Replication Configuration 
    17.2 Replication Implementation 
    17.3 Replication Solutions 
    17.4 Replication Notes and Tips 
18 MySQL Cluster NDB 7.3 and MySQL Cluster NDB 7.4 
    18.1 MySQL Cluster Overview 
    18.2 MySQL Cluster Installation 
    18.3 Configuration of MySQL Cluster 
    18.4 MySQL Cluster Programs 
    18.5 Management of MySQL Cluster 
    18.6 MySQL Cluster Replication 
    18.7 MySQL Cluster Release Notes 
19 Partitioning 
    19.1 Overview of Partitioning in MySQL 
    19.2 Partitioning Types 
    19.3 Partition Management 
    19.4 Partition Pruning 
    19.5 Partition Selection 
    19.6 Restrictions and Limitations on Partitioning 
20 Stored Programs and Views 
    20.1 Defining Stored Programs 
    20.2 Using Stored Routines (Procedures and Functions) 
    20.3 Using Triggers 
    20.4 Using the Event Scheduler 
    20.5 Using Views 
    20.6 Access Control for Stored Programs and Views 
    20.7 Binary Logging of Stored Programs 
21 INFORMATION_SCHEMA Tables 
    21.1 The INFORMATION_SCHEMA CHARACTER_SETS Table 
    21.2 The INFORMATION_SCHEMA COLLATIONS Table 
    21.3 The INFORMATION_SCHEMA COLLATION_CHARACTER_SET_APPLICABILITY Table 
    21.4 The INFORMATION_SCHEMA COLUMNS Table 
    21.5 The INFORMATION_SCHEMA COLUMN_PRIVILEGES Table 
    21.6 The INFORMATION_SCHEMA ENGINES Table 
    21.7 The INFORMATION_SCHEMA EVENTS Table 
    21.8 The INFORMATION_SCHEMA GLOBAL_STATUS and SESSION_STATUS Tables 
    21.9 The INFORMATION_SCHEMA GLOBAL_VARIABLES and SESSION_VARIABLES Tables 
    21.10 The INFORMATION_SCHEMA KEY_COLUMN_USAGE Table 
    21.11 The INFORMATION_SCHEMA OPTIMIZER_TRACE Table 
    21.12 The INFORMATION_SCHEMA PARAMETERS Table 
    21.13 The INFORMATION_SCHEMA PARTITIONS Table 
    21.14 The INFORMATION_SCHEMA PLUGINS Table 
    21.15 The INFORMATION_SCHEMA PROCESSLIST Table 
    21.16 The INFORMATION_SCHEMA PROFILING Table 
    21.17 The INFORMATION_SCHEMA REFERENTIAL_CONSTRAINTS Table 
    21.18 The INFORMATION_SCHEMA ROUTINES Table 
    21.19 The INFORMATION_SCHEMA SCHEMATA Table 
    21.20 The INFORMATION_SCHEMA SCHEMA_PRIVILEGES Table 
    21.21 The INFORMATION_SCHEMA STATISTICS Table 
    21.22 The INFORMATION_SCHEMA TABLES Table 
    21.23 The INFORMATION_SCHEMA TABLESPACES Table 
    21.24 The INFORMATION_SCHEMA TABLE_CONSTRAINTS Table 
    21.25 The INFORMATION_SCHEMA TABLE_PRIVILEGES Table 
    21.26 The INFORMATION_SCHEMA TRIGGERS Table 
    21.27 The INFORMATION_SCHEMA USER_PRIVILEGES Table 
    21.28 The INFORMATION_SCHEMA VIEWS Table 
    21.29 INFORMATION_SCHEMA Tables for InnoDB 
    21.30 INFORMATION_SCHEMA Tables for MySQL Cluster 
    21.31 Thread Pool INFORMATION_SCHEMA Tables 
    21.32 Extensions to SHOW Statements 
22 MySQL Performance Schema 
    22.1 Performance Schema Quick Start 
    22.2 Performance Schema Configuration 
    22.3 Performance Schema Queries 
    22.4 Performance Schema Instrument Naming Conventions 
    22.5 Performance Schema Status Monitoring 
    22.6 Performance Schema Atom and Molecule Events 
    22.7 Performance Schema Statement Digests 
    22.8 Performance Schema General Table Characteristics 
    22.9 Performance Schema Table Descriptions 
    22.10 Performance Schema Option and Variable Reference 
    22.11 Performance Schema Command Options 
    22.12 Performance Schema System Variables 
    22.13 Performance Schema Status Variables 
    22.14 Performance Schema and Plugins 
    22.15 Using the Performance Schema to Diagnose Problems 
23 Connectors and APIs 
    23.1 MySQL Connector/ODBC 
    23.2 MySQL Connector/Net 
    23.3 MySQL Connector/J 
    23.4 MySQL Connector/C++ 
    23.5 MySQL Connector/C 
    23.6 MySQL Connector/Python 
    23.7 libmysqld, the Embedded MySQL Server Library 
    23.8 MySQL C API 
    23.9 MySQL PHP API 
    23.10 MySQL Perl API 
    23.11 MySQL Python API 
    23.12 MySQL Ruby APIs 
    23.13 MySQL Tcl API 
    23.14 MySQL Eiffel Wrapper 
24 Extending MySQL 
    24.1 MySQL Internals 
    24.2 The MySQL Plugin API 
    24.3 MySQL Services for Plugins 
    24.4 Adding New Functions to MySQL 
    24.5 Debugging and Porting MySQL 
25 MySQL Enterprise Edition 
    25.1 MySQL Enterprise Monitor Overview 
    25.2 MySQL Enterprise Backup Overview 
    25.3 MySQL Enterprise Security Overview 
    25.4 MySQL Enterprise Encryption Overview 
    25.5 MySQL Enterprise Audit Overview 
    25.6 MySQL Enterprise Firewall Overview 
    25.7 MySQL Enterprise Thread Pool Overview 
26 MySQL Workbench