MySQL的information_schema
1.information_schema概述
在SQL注入攻击中,information_schema数据库是MySQL自带的一个特殊数据库,它提供了访问数据库元数据的方式。元数据是关于数据的数据,如数据库名、表名、列的数据类型、访问权限等。
2.information_schema中的常用表
1.schemate
描述:提供了当前MySQL实例中所有数据库的信息。
关键字段:
schema_name:数据库名。
default_character_set_name:数据库的默认字符集。
default_collation_name:数据库的默认校对规则。
用途:用于查询所有数据库的名称。
2.tables
描述:提供了关于数据库中的表的信息(包括视图)。
关键字段:
table_schemea:数据库名。
table_name:表名。
table_type:表类型(如base table表示基本表,view表示视图)。
engine:表的存储引擎。
用途:用于查询指定数据库中的所有表名。
3.columns
描述:提供了表中的列信息。
关键字段:
table_schema:数据库名。
table_name:表名。
column_name:列名。
data_type:列的数据类型。
character_maximum_length:字符类型的最大长度(对于非字符类型,该值为null)。
is_nullable:列是否允许null值。
用途:用于查询指定表中的所有列名和数据类型等信息。