#查看数据库版本号

mysql> select @@version;

+------------+

| @@version  |

+------------+

| 5.5.16-log |

+------------+

1 row in set (0.00 sec)



mysql> select * from information_schema.schemata; # 保存了系统的全部的数据库名 ,关键的字段是schema_name

# 2 rows in set (0.04 sec)表示仅仅有2个数据库

+--------------+--------------------+----------------------------+------------------------+----------+

| catalog_name | schema_name        | default_character_set_name | default_collation_name | sql_path |

+--------------+--------------------+----------------------------+------------------------+----------+

| def          | information_schema | utf8                       | utf8_general_ci        | null     |

| def          | test               | gb2312                     | gb2312_chinese_ci      | null     |

+--------------+--------------------+----------------------------+------------------------+----------+



mysql> select * from information_schema.columns;  #





# 关键的字段是table_name & column_name  411 rows in set (0.05 sec)



+---------------+--------------------+---------------------------------------+-------------------------------+------------------



| table_catalog | table_schema       | table_name                            | column_name                   | ordinal_position | column_default      | is_nullable | data_type | 





character_maximum_length | character_octet_length | numeric_precision | numeric_scale | character_set_name | collation_name    | column_type         | column_key | extra    





      | privileges                      | column_comment |

+---------------+--------------------+---------------------------------------+-------------------------------+------------------

mysql> select * from information_schema.tables;   # 包括全部的表名 ,38 rows in set (0.09 sec) 表示有38张表



mysql> select count(*) from information_schema.tables;  # count(*)返回一共同拥有多少行(就是多少条记录)



+----------+

| count(*) |

+----------+

|       38 |

+----------+

1 row in set (0.00 sec)





#关键的字段是table_column & table_name 



+---------------+--------------------+---------------------------------------+-------------+--------+---------+------------+--



| table_catalog | table_schema       | table_name                            | table_type  | engine | version | row_format | table_rows | avg_row_length | data_length | 





max_data_length | index_length | data_free | auto_increment | create_time         | update_time         | check_time | table_collation   | checksum | create_options  | 





table_comment |

+---------------+--------------------+---------------------------------------+-------------+--------+---------+------------+--



mysql> select * from information_schema.tables where table_schema="test";





# keyword是table_name和table_schema  (数据库名) 

+---------------+--------------+------------+------------+--------+---------+------------+------------+----------------+-----



| table_catalog | table_schema | table_name | table_type | engine | version | row_format | table_rows | avg_row_length | data_length | max_data_length | index_length | 





data_free | auto_increment | create_time         | update_time | check_time | table_collation   | checksum | create_options | table_comment |

+---------------+--------------+------------+------------+--------+---------+------------+------------+----------------+-----



| def           | test         | t_users    | base table | innodb |      10 | compact    |          0 |              0 |       16384 |               0 |        16384 |   9437184 |              1 | 2012-10





-06 12:21:23 | null        | null       | gb2312_chinese_ci |     null |                |               |

+---------------+--------------+------------+------------+--------+---------+------------+------------+----------------+-----



1 row in set (0.00 sec)





mysql> select * from information_schema.columns where table_name="t_users";





# 关键是得到 column_name





+---------------+--------------+------------+-------------+------------------+----------------+-------------+-----------+----



| table_catalog | table_schema | table_name | column_name | ordinal_position | column_default | is_nullable | data_type | character_maximum_length | 





character_octet_length | numeric_precision | numeric_scale | character_set_name | collation_name    | column_type | column_key | extra          | privileges                      | 





column_comment |

+---------------+--------------+------------+-------------+------------------+----------------+-------------+-----------+----



| def           | test         | t_users    | id          |                1 | null           | no          | int       |                     null |                   null |                10 |             0 | null               | 





null              | int(11)     | pri        | auto_increment | select,insert,update,references |                |

| def           | test         | t_users    | name        |                2 | null           | no          | text      |                    65535 |                  65535 |              null |          null | gb2312   





          | gb2312_chinese_ci | text        |            |                | select,insert,update,references |                |

| def           | test         | t_users    | password    |                3 | null           | no          | text      |                    65535 |                  65535 |              null |          null | gb2312 





            | gb2312_chinese_ci | text        |            |                | select,insert,update,references |                |

+---------------+--------------+------------+-------------+------------------+----------------+-------------+-----------+----



3 rows in set (0.01 sec)





mysql> select "id","password" from information_schema.columns where table_name="t_users";



# 注意当要查询的变量是常数的时候就是空查询,返回的一定就是你的查询常量,通常是在union的查询里确定

显示位置而用的



+----+----------+

| id | password |

+----+----------+

| id | password |

| id | password |

| id | password |

+----+----------+

3 rows in set (0.02 sec)



mysql> use test;  #使用该数据库



database changed

mysql> select * from test;

error 1146 (42s02): table 'test.test' doesn't exist

mysql> select * from t_users;

empty set (0.00 sec)



这样就不须要再猜username和password啦



insert into `t_users`(`id`, `name`, `password`) values (001,'张三疯','123456');

#插入一条记录之后





mysql> select * from t_users;

+----+--------+----------+

| id | name   | password |

+----+--------+----------+

|  1 | 张三疯 | 123456   |

+----+--------+----------+

1 row in set (0.00 sec)



#假设没有权限加入,就仅仅有逐位猜值啦



mysql> select count(*) from t_users where len(password)=12;

error 1305 (42000): function test.len does not exist

mysql>



# 二分查找法



#这里报错啦,该函数不存在,在mysql是length()在access里是len();

mysql> select count(*) from t_users where length(password)=12;

error 1305 (42000): function test.len does not exist



#首先确定了password的长度



mysql> select password from t_users where length(password)<6;

empty set (0.00 sec)



mysql> select password from t_users where length(password)>6;

empty set (0.00 sec)



mysql> select password from t_users where length(password)=6;

+----------+

| password |

+----------+

| 123456   |

+----------+

1 row in set (0.00 sec)



#再进行逐位猜值



 select * from t_users where asc(left(password,1))>0;

 

mysql> select password from t_users where left(password,1)<1;

empty set (0.00 sec)



mysql> select password from t_users where left(password,1)<2;

+----------+

| password |

+----------+

| 123456   |

+----------+

#函数运行并成功返回,说明第一位的值就是1



#或者直接查询password:

 

 mysql> select password from t_users where length('password')>0;

+----------+

| password |

+----------+

| 123456   |

+----------+

1 row in set (0.00 sec)



mysql> select password from t_users where ascii(left(password,1))<2;

empty set (0.00 sec)



#在mysql里面什么函数都要写全啦,在acess里直接就是asc();



mysql> select password from t_users where ascii(left(password,1))=49;

+----------+

| password |

+----------+

| 123456   |



#能够直接擦每一位的值,也能够查acs值,可是直接查值是快些

#这样直到猜完length(password)位为止



#可是中文的名字不好猜啊,1个字,2个字节



>>> int("张")

traceback (most recent call last):

  file "<stdin>", line 1, in <module>

valueerror: invalid literal for int() with base 10: '\xd6\xec'

>>>

>>> chr(66)

'b'

>>>



#事实上还是能够查的



mysql> select password from t_users where left(name,1)="张";

+----------+

| password |

+----------+

| 123456   |

+----------+

1 row in set (0.00 sec)



mysql> select password from t_users where left(name,2)="张";

empty set (0.00 sec)



#记住left是返回的全部的左边的值哈

mysql> select password from t_users where left(name,2)="张三";

+----------+

| password |

+----------+

| 123456   |

+----------+



#mid(匹配的字段,从第几个開始,取几个);能够完毕逐位比較

mysql> select password from t_users where mid(name,2,1)="三";

+----------+

| password |

+----------+

| 123456   |

+----------+

1 row in set (0.00 sec)

Mysql数据库的mysql Schema 究竟有哪些东西&amp; 手工注入的基础要领的更多相关文章

  1. Mysql数据库的mysql Schema 究竟有哪些东西& 手工注入的基础要领

    #查看数据库版本号 mysql> select @@version; +------------+ | @@version  | +------------+ | 5.5.16-log | +- ...

  2. Mysql数据库知识-Mysql索引总结 mysql mysql数据库 mysql函数

    mysql数据库知识-Mysql索引总结: 索引(Index)是帮助MySQL高效获取数据的数据结构. 下边是自己整理的资料与自己的学习总结,,做一个汇总. 一.真的有必要使用索引吗? 不是每一个性能 ...

  3. 【MySQL 数据库】MySQL目录

    目录 [第一章]MySQL数据概述 [第二章]MySQL数据库基于Centos7.3-部署 [MySQL解惑笔记]Centos7下卸载彻底MySQL数据库 [MySQL解惑笔记]忘记MySQL数据库密 ...

  4. MySQL(一) -- MySQL学习路线、数据库的基础、关系型数据库、关键字说明、SQL、MySQL数据库、MySQL服务器对象、SQL的基本操作、库操作、表操作、数据操作、中文数据问题、 校对集问题、web乱码问题

    1 MySQL学习路线 基础阶段:MySQL数据库的基本操作(增删改查),以及一些高级操作(视图.触发器.函数.存储过程等). 优化阶段:如何提高数据库的效率,如索引,分表等. 部署阶段:如何搭建真实 ...

  5. 如何登录mysql? cmd怎么连接mysql数据库||从MYSQL客户端登录MYSQL

    1 2 3 4 5 6 7 分步阅读 Mysql开源数据库,任何人都可以下载安装使用.那么安装好的mysql如何登陆连接mysql数据库呢?本经验咗嚛介绍几种常见的方法 工具/原料   mysql 连 ...

  6. VC++6.0连接MySQL数据库(MySQL API)

    一.MySQL的安装   Mysql的安装去官网下载就可以...最新的是5.7版本..二.VC6.0的设置(1)打开VC6.中选0 工具栏Tools菜单下的Options选项,在Directories ...

  7. C#调用MySQL数据库(使用MySql.Data.dll连接)mysql-connector-net-6.10.4.msi

    下载地址:http://dev.mysql.com/downloads/connector/net/ 安装指导 1.安装:mysql-connector-net-6.10.4.msi 其下载地址:ht ...

  8. nodejs学习(三)--express连接mysql数据库,mysql查询封装

    一.说一下 连接不同的数据库需要安装相应的插件,此demo使用mysql数据库,需自行安装mysql数据库软件. 新建数据库webapp, 新建表users: 二.直接开码 npm install m ...

  9. 《MySQL数据库》MySQL数据库安装(linux)

    1.  下载安装包: 百度网盘:链接: https://pan.baidu.com/s/1toGl8O9gMBpDWn0mHWwFyg 提取码: i51g 官网下载:https://dev.mysql ...

随机推荐

  1. 3.RxJava详解

    一.RxJava 到底是什么 异步(取代AsyncTask/Handler/XXX/...?)   二.RxJava 好在哪   简洁(逻辑的简洁,.一步一走)   举例: 题目:将文件夹中的图片都取 ...

  2. errno.h 错误码描述.

    描述:一般说的Linux源码的目录,默认是基于 /usr/include/ 的. 使用 char *strerror(int errnum); 函数打印错误代码的描述.我简单对比了一下,发现描述大体一 ...

  3. CSS 解决<td>里面内容太多把表格弄变形的原因,设置 自动换行。

    1 < style="word-break:break-all"> 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congra ...

  4. QT高级运用之粒子模拟(Particle Simulations)

    粒⼦模拟是计算机图形技术的可视化图形效果.典型的效果有:落叶,⽕焰,爆炸,流星,云等等.它不同于其它图形渲染, 粒⼦是基于模糊来渲染.它的结果在基于像素下是不可预测的.粒⼦系统的参数描述了随机模拟的边 ...

  5. js 浏览器版本检测

    整理了一下浏览器检测的js脚本 分享给大家 浏览器检测一般都是在网页打开的时候执行 使用js的闭包来实现页面加载以后执行的脚本 (function(){ //页面加载后执行的脚本 })() ; 检测浏 ...

  6. Oracle 11g安装攻略

    Oracle 11g安装攻略 本攻略是以Win7-32位系统中安装Oracle 11g为示例,安装前大家需要确认以下几点: 你的内存足够大且没有问题,因为Oracle非常吃内存. 你的系统已经激活. ...

  7. jQuery自学笔记(二):jQuery选择器

    一.简单选择器 ID选择器:$('#box') 元素标签名:$('div') 类选择器:$('.box') jQuery提供了length和size()两种方法查看返回的元素,可验证ID在页面只出现一 ...

  8. 在centos服务器上配置gitlab钩子引发的一系列问题

    为了给公司的服务器上搭建gitlab环境并且配置钩子(实现在本地git push之后服务器自动git pull),整了好久,最后终于把问题解决了,下面是记录安装gitlab之后引发的一系列问题: 首先 ...

  9. JQuery的$和其它JS发生冲突的快速解决方法

    众所周知,jQuery是目前最流行的JS封装包,简化了很多复杂的JS程序,JQuery讲浏览器DOM树定义为$,通过$来获取各个子节点. 然后,JS插件并非只有JQuery,还有prototype.j ...

  10. IOS面试攻略

    IOS面试攻略(1.0) 2013-10-13 20:58:09|  分类: IOS面试 |  标签:ios知识点总汇  ios面试  |举报|字号 订阅     来自:伊甸网 @ 看到这个关键字,我 ...