Mysql常用命令

2019-03-08  本文已影响0人  煊奕

写在前面

最近在学习SQL注入,以sqli-labs练习,可是自己对MySQL感到很陌生,故在此学习一下。

连接与退出MySQL

  1. 格式:mysql -h主机地址 -u用户名 -p用户密码
  2. 连接到本机上的MySQL:
  1. 连接到远程主机上的MySQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为12345678。则键入以下命 令:mysql -h110.110.110.110 -u root -p 12345678 (注:u与root之间可以不用加空格,其它也一样)
  2. 退出MySQL命令: exit (回车)

常用命令

  1. 使用SHOW语句找出在服务器上当前存在什么数据库:show databases;
  2. 创建一个数据库: create database database_name;
  3. 选择所要用的数据库:use database_name; (按回车键出现Database changed 时说明操作成功)
  4. 查看现在的数据库中存在什么表:show tables;
  5. 创建一个数据库表:create table table_name (column1 类型 ,column2 类型,... );
  6. 显示表的结构:describe table_name;
  7. 往表中加入记录:insert into table_name values("value1","value2");
  8. 用文本方式将数据装入数据库表中(例如D:/mysql.txt):load data local infile “D:/mysql.txt” into table table_name;
  9. 导入.sql文件命令(例如D:/mysql.sql):source d:/mysql.sql;
  10. 删除表:drop table tabe_name;
  11. 清空表:delete from table_name;
  12. 更新表中数据:update table_name set column1="value1" where column2='value2';
  13. 命令行修改root密码:
  1. 创建用户,向表中添加用户:例如insert into mysql.user(Host,User,Password) values(‘localhost’,'jeecn’,password(‘jeecn’)); 记得刷新系统权限表,flush privileges; 这样就创建了一个名为:jeecn 密码为:jeecn 的用户。
  2. 为用户授权:
  1. 删除用户:delete from user where User=”jeecn” and Host=”localhost”;
    注意:关于用户的创建,更新,授权,删除等,执行完相应操作后,需要刷新系统权限表,flush privileges;
  2. 删除数据库 drop database database_name;

全局管理权限

FILE: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。

数据库/数据表/数据列权限:

ALTER: 修改已存在的数据表(例如增加/删除列)和索引。
CREATE: 建立新的数据库或数据表。
DELETE: 删除表的记录。
DROP: 删除数据表或数据库。
INDEX: 建立或删除索引。
INSERT: 增加表的记录。
SELECT: 显示/搜索表的记录。
UPDATE: 修改表中已存在的记录。

特别的权限:

ALL: 允许做任何事(和root一样)。
USAGE: 只允许登录–其它什么也不允许做。


备份数据库

  1. 导出整个数据库:mysqldump -u user_name -p123456 database_name > outfile_name.sql
  2. 导出一个表:mysqldump -u user_name -p database_name table_name > outfile_name.sql
  3. 导出一个数据库结构:mysqldump -u user_name -p -d --add-drop-table database_name > outfile_name.sql 其中,-d: 没有数据, --add-drop-table 在每个create语句之前增加一个drop table
  4. 带语言参数导出:mysqldump -u -p --default-character-set=latin1 --set-charset=gbk --skip-opt database_name > outfile_name.sql

加深运用

  1. 根据已有的表创建新表:
  1. 增加一个列: Alter table tabname add column col type
    注:列增加后将不能删除。列加上数据后类型也不能改变,唯一能改变的是增加varchar类型的长度。
  2. 添加主键:Alter table tabname add primary key(col) 删除主键:Alter table tabname drop primary key(col)
  3. 创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname
    注:索引是不可更改的,想更改必须删除重新建。
  4. 创建视图:create view viewname as select statement 删除视图:drop view viewname
  5. 几个简单的基本的sql语句:
  1. 几个高级查询运算词:
  1. 对数据库进行操作:
  1. 修改数据库的名称: sp_renamedb 'old_name', 'new_name'
上一篇下一篇

猜你喜欢

热点阅读