(1)命令:mysql -uroot -p
(2)命令:mysql -h ip(本机) -uroot -p
如果出现如下错误:
原因:没有赋予该ip地址登录mysql数据库的权限。
解决方法:
(3)命令:mysql -hlocalhost -uroot -p
(4)命令:mysql -h127.0.0.1 -uroot -p
2、远程连接
命令:mysql -h ip(装有数据库的主机地址) -uroot -p
出现错误:
解决方法:在装有数据库的主机上执行如下操作。
3、使用数据库student。
create table result(id int(8), name varchar(20), city varchar(20), score int(5));
1、查看数据库中所有表名
2、查看表结构
1、在表的字段a和字段b之间加入一个c字段
2、修改表中字段数据类型
insert into result(id,name,city,score) values(1,"wang","beijing",75);
insert into result(id,name,city,score) values(3,"li","shanghai",80);
insert into result(id,name,city,score) values(5,"chen","fuzhou",70);
insert into result(id,name,city,score) values(2,"zhou","xian",90);
insert into result(id,name,city,score) values(7,"han","guangzhou",65);
1、查询表中所有字段信息。
2、查询表中的name和 score字段信息。
3、查询name为li的学生的分数。
(1)将result表中的数据按照分数(score)从高到低进行排序;
命令:select * from result order by score desc;
其中,desc表示降序(递减);如果从低到高(升序)进行排列,则可以将desc换成asc:如果不加此参数,默认情况下按升序方式排列。
(2)命令:select id,name,score from result order by 1;显示以id升序排列的结果。
命令:select id,name,score from result order by 2;显示以name升序排列的结果!
命令:select id,name,score from result order by 3;显示以score升序排列的结果!
从以上结果可以总结出,对于以下命令:select c1,c2,.. . ,cn from result order by M;order by后面的数字(M)必须小于或等于n(数据库查询的字段数),才能正常显示。如果M>n,数据库就会报错可以利用这个特点判断数据库查询的字段数。
(1)limit M,N。表示从第M+1条数据开始,顺序往下查询N条数据。
(2)limit M。表示查询前M条数据。
(1)命令:select* from result union select 1,2,3,4; 此语句的查询结果,即是select * from result和 select 1,2,3,4查询结果的拼接。
(2)命令:select id,name,score from result union select 1,2,3;
(3)select id,name,score from result union select 1,2;
(4)select id,name,score from result union select 1,2,3,4;
从以上结果可以总结,对于以下命令:select c1,c2,. . .,cn from result union select d1,d2, . . .dm;后半句union select查询的字段数(m)必须与前半句select查询的字段数(n)相等,数据库才能正常显示结果。与order by相似,可以利用这个特点判断数据库查询的字段数。
(5)select id,city from result where id=1 and 1=2 union select name,score from result;
从以上结果可以总结,在已知字段名的情况下,攻击者只要将该字段置于任何能够显示的位置,就可以暴露该字段的值。
(1)MySQL (MariaDB)5.5以上版本自带information_schema 数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息,如数据库名、数据库的表、表栏的数据类型与访问权限等。可以把information_schema 数据库看作 MySQL(MariaDB)的“目录"!