SQL注入零基础学习一

目录

1.什么是SQL注入

SQL注入之数据库概述

数据库的分类

关系型数据库

非关系型数据库

2.SQL注入之MYSQL语句语法

数据库服务器层级关系:

3.SQL注入之MYSQL系统库


1.什么是SQL注入

SQL注入之数据库概述

数据库就是一个存储数据的仓库,数据库是以一定方式存储在一起,能与多个用户共享,具有尽可能小的冗余,与应用程序彼此独立的数据集合。

数据库的分类

关系型数据库

关系型数据库,存储的格式可以直观地反映实体间的关系,和常见的表格比较相似
关系型数据库中表与表之间有很多复杂的关联关系的
常见的关系型数据库有MySQL,Orcale,PostgreSQL , SQL Server等。

非关系型数据库

随着近些年技术方向的不断扩展,大量的NoSQL数据库如 Mon goDB,Redis出于简化数据库结构,避免冗余,影响性能的表连接。摒弃复杂分布式的目的被设计。

2.SQL注入之MYSQL语句语法

数据库服务器层级关系:

服务器里面
:多个数据库
        :多个数据表
                :多个行 列  字段
                        : 数据

SQL语句语法回顾:
 查询当前数据库服务器所有的数据库
        show databases;
        选中某个数据库:use 数据库名字
        查询当前数据库所有的表:show tables;
        查询t1表所有数据:select * from t1;

        条件查询 id=2  where 条件
        select * from t1 where id=2;

        union 合并查询 
        2个特性:
        前面查询的语句 和 后面的查询语句 结果互不干扰!
        前面的查询语句的字段数量 和 后面的查询语句字段数量  要一致查询
        id=2   pass =111
        select id from t1 where id=-1 union select * from t1 where pass =111;

        order by 排序
        order by 字段名字  id  也可以 跟上数字 1 2 3 4 ...按第几列的字段升序排序
        猜解表的列数 知道表有几列  

3.SQL注入之MYSQL系统库

1.information_schema 库:是信息数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息;

        SCHEMATA 表:提供了当前MySQL实例中所有数据库信息, show databases结果取之此表SCHEMATA _NAME。

        TABLES表:提供了关于数据中表的信息。table_name。

        COLUMNS表:提供了表的列信息,详细描述了某张表的所有列以及每个列的信息。column_name

2、performance_schema库:具有87张表。
MySQL 5.5开始新增一个数据库:PERFORMANCE_SCHEMA,主要用于收集数据库服务器性能参数。内存数据库,数据放在内存中直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级。

3、mysql库:是核心数据库,类似于sql server中的master表,主要负责存储数据库的用户(账户)信息、权限设置、关键字等mysql自己需要使用的控制和管理信息。不可以删除,如果对mysql不是很了解,也不要轻易修改这个数据库里面的表信息。
常用举例:在mysql.user表中修改root用户的密码

4、sys库:具有1个表,100个视图。
sys库是MySQL 5.7增加的系统数据库,这个库是通过视图的形式把information_schema和performance_schema结合起来,查询出更加令人容易理解的数据。
可以查询谁使用了最多的资源,哪张表访问最多等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值