1、简介

MySQL数据库安装完毕之后,对MYSQL数据库中各种指令的操作变得尤为重要,熟练掌握MYSQL必备命令是SA、DBA必备工作之一,如下为MYSQL数据库中操作必备命令,所有操作指令均在MYSQL命令行中操作,不能在Linux Shell解释器上直接运行。
直接在Shell终端执行命令:mysql(yum安装)或者/usr/local/mysql55/bin/mysql(源码安装),按Enter键,进入MYSQL命令行界面如下所示:

[root@localhost ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.64-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

2、数据库操作命令

# 查看数据库: 
show  databases;
# 初始化后,默认会有四个数据库: information_schema:信息数据库。主要保存着关于MySQL服务器所维护的所有其他数据库的信息,如数据库名,数据库的表,表栏的数据类型与访问权限等。通过show databases;查看到数据库信息,也是出自该数据库中的SCHEMATA表。 mysql:  mysql的核心数据库。主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息。 performance_schema: 用于性能优化的数据库。  

# 查看数据库的创建语句: show create database mysql; 
 mysql为数据库名。

# 查看字符集命令: 
show character  set;

# 修改数据库的字符集: 
alter database zabbix default character set utf8;

# 创建数据库: 
create  database zabbix charset=utf8; 
或者: 
create database if not exists zabbix charset=gbk; 
用上面的这条命令创建数据库,如果数据库已经存在就不会报错了。

# 删除数据库: 
drop database zabbix;
或者: 
drop database if exists zabbix; 
用上面这种方式删除数据库,如果数据库不存在就不会报错

#查看数据库字符集
show variables like '%char%';

#查看MySQL存储引擎
show engines;

#查看MySQL默认的存储引擎
show variables like '%storage_engine%';

#修改MySQL t1表存储引擎
alter table  t1  engine=innodb;

#刷新权限
flush  privileges;

3、表操作命令

3.1 表机构操作

#查看所有表: 
use mysql; 
show tables; 
或者 
show  tables from mysql;

#查看所有表的详细信息: 
use mysql; 
show table status\G 
或者
show table status from mysql\G

#查看某张表的详细信息: 
use mysql; 
show table status like "user"\G 
或者 
show table status from mysql like "user"\G

#查看表结构: 
desc  mysql.user;

#查看创建表的sql语句: 
show create table mysql.user\G

#修改表字段名,需要将字段属性写全: 
alter table t2 change id age int(5);
 id:   原字段 
 age:  新字段
 
#添加表字段: 
alter  table t2 add job varchar(20);
默认是加在后面,如果想加在第一列,或者某个字段后可以进行指定: 
#加在第一列 
alter  table t2 add job2 varchar(20) first; 
#加在name字段后: 
alter  table t2 add job3 varchar(20) after name;

#修改表字段的属性或者位置: 
#修改字段的顺序,把job3放在第一列: 
alter table t2 modify job3 varchar(20) first;

#删除表字段: 
alter table t2 drop brith1;

3.2 表数据操作

创建表t2

create table t2( id  int(10) auto_increment primary key, name varchar(20), job varchar(10) );

3.2.1 增

# 全字段增加数据: 
insert into t2 values(1,"xiaoming","it"); 
或者 
insert t2(name) values(2,"xiaohua"); 
或者 
insert t2 set name="xiaoming", job="teacher";
# 指定字段增加数据: 
insert into t2(name) value("xiaoqiang"),("xiaowang");

3.2.2 删

delete from t2 where id=2;

3.2.3 改

update t2 set name="xiaoqiang",job="engineer" where id=3;

3.2.4 查

#全字段查找,不建议: 
select * from t2;
#查找指定字段: 
select name,job from t2;

4、查询条件、函数

4.1 运算符

>   大于 
>=  大于等于 
=   等于 
<   小于 
<=  小于等于 
!=  不等于

4.2 模糊匹配

like        模糊查找 
%       	匹配任意多个字符 
_       	匹配单个字符

4.3 范围

in                  表示非连续的范围 
between A and B     表示一个连续的范围内 
not  in               不在某个条件内
is null        匹配空值

4.4 聚合函数

max()      最大值
min()       最小值
count()    数据表行数
sum()     求和
avg()       求平均值

4.5 排序

order by  字段  asc       根据“列”从小到大排序 
order by  字段  desc      根据“列”从大到小排序

4.6 分组

group by 字段

4.7 限制

limit n;   显示前n行
#显示前三行 
select * from t2 limit 3; 
#显示从第3行开始后的3行; 
select * from t2 limit 3,3; 
#显示从第3行开始后的4行 
select * from t2 limit 4 offset 3;