1外盯、SQL介紹
結構化查詢語言
5.7 以后符合SQL92嚴格模式
通過sql_mode參數(shù)來控制
2、常用SQL分類
DDL:數(shù)據(jù)定義語言
DCL:數(shù)據(jù)控制語言
DML:數(shù)據(jù)操作語言
DQL:數(shù)據(jù)的查詢語言
3翼雀、數(shù)據(jù)類型饱苟、表屬性、字符集
3.1 數(shù)據(jù)類型
3.1.1 作用
保證數(shù)據(jù)的準確性和標準性森爽。
3.1.2 種類
數(shù)值類型
image
tinyint : -128~127
int :-2^31~2^31-1
說明:手機號是無法存儲到int的抡四。一般是使用char類型來存儲收集號
字符類型
image
char(11) :
定長 的字符串類型,在存儲字符串時春畔,最大字符長度11個,立即分配11個字符長度的存儲空間城须,如果存不滿,空格填充米苹。
varchar(11):
變長的字符串類型看糕伐,最大字符長度11個。在存儲字符串時蘸嘶,自動判斷字符長度良瞧,按需分配存儲空間。
enum('bj','tj','sh'):
枚舉類型训唱,比較適合于將來此列的值是固定范圍內(nèi)的特點褥蚯,可以使用enum,可以很大程度的優(yōu)化我們的索引結構。
時間類型
image
列值不能為空况增,也是表設計的規(guī)范赞庶,盡可能將所有的列設置為非空⊙餐ǎ可以設置默認值為0
unique key :唯一鍵
列值不能重復
unsigned :無符號
針對數(shù)字列尘执,非負數(shù)。
其他屬性:
key :索引
可以在某列上建立索引宴凉,來優(yōu)化查詢
DATETIME
范圍為從 1000-01-01 00:00:00.000000 至 9999-12-31 23:59:59.999999誊锭。
TIMESTAMP
1970-01-01 00:00:00.000000 至 2038-01-19 03:14:07.999999。
timestamp會受到時區(qū)的影響
二進制類型
image
3.2 表屬性
3.2.1 列屬性
約束(一般建表時添加):
**primary key** :主鍵約束
設置為主鍵的列弥锄,此列的值必須非空且唯一丧靡,主鍵在一個表中只能有一個蟆沫,但是可以有多個列一起構成。
**not null** :非空約束
列值不能為空温治,也是表設計的規(guī)范饭庞,盡可能將所有的列設置為非空“揪#可以設置默認值為0
**unique key** :唯一鍵
列值不能重復
**unsigned** :無符號
針對數(shù)字列舟山,非負數(shù)。
其他屬性:
**key** :索引
可以在某列上建立索引卤恳,來優(yōu)化查詢,一般是根據(jù)需要后添加
**default** :默認值
列中累盗,沒有錄入值時,會自動使用default的值填充
**auto_increment**:自增長
針對數(shù)字列突琳,順序的自動填充數(shù)據(jù)(默認是從1開始若债,將來可以設定起始點和偏移量)
**comment ** : 注釋
3.2.2 表的屬性
存儲引擎:
InnoDB(默認的)
字符集和排序規(guī)則:
utf8
utf8mb4
3.3 字符集和校對規(guī)則
3.3.1 字符集
utf8
utf8mb4
3.3.2 校對規(guī)則(排序規(guī)則)
大小寫是否敏感
4、DDL應用
4.1 數(shù)據(jù)定義語言
4.2 庫定義
4.2.1 創(chuàng)建
4.2.1 創(chuàng)建數(shù)據(jù)庫
create database school;
create schema sch;
show charset;
show collation;
CREATE DATABASE test CHARSET utf8;
create database xyz charset utf8mb4 collate utf8mb4_bin;
建庫規(guī)范:
1.庫名不能有大寫字母
2.建庫要加字符集
3.庫名不能有數(shù)字開頭
4. 庫名要和業(yè)務相關
建庫標準語句
mysql> create database db charset utf8mb4;
mysql> show create database xuexiao;
4.2.2 刪除(生產(chǎn)中禁止使用)
mysql> drop database oldboy;
4.2.3 修改
SHOW CREATE DATABASE school;
ALTER DATABASE school CHARSET utf8;
注意:修改字符集拆融,修改后的字符集一定是原字符集的嚴格超集
4.2.4 查詢庫相關信息(DQL)
show databases蠢琳;
show create database oldboy;
4.3 表定義
4.3.1 創(chuàng)建
create table stu(
列1 屬性(數(shù)據(jù)類型镜豹、約束傲须、其他屬性) ,
列2 屬性逛艰,
列3 屬性
)
4.3.2 建表
USE school;
CREATE TABLE stu(
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '學號',
sname VARCHAR(255) NOT NULL COMMENT '姓名',
sage TINYINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '年齡',
sgender ENUM('m','f','n') NOT NULL DEFAULT 'n' COMMENT '性別' ,
sfz CHAR(18) NOT NULL UNIQUE COMMENT '身份證',
intime TIMESTAMP NOT NULL DEFAULT NOW() COMMENT '入學時間'
) ENGINE=INNODB CHARSET=utf8 COMMENT '學生表';
建表規(guī)范:
1. 表名小寫
2. 不能是數(shù)字開頭
3. 注意字符集和存儲引擎
4. 表名和業(yè)務有關
5. 選擇合適的數(shù)據(jù)類型
6. 每個列都要有注釋
7. 每個列設置為非空躏碳,無法保證非空,用0來填充散怖。
4.3.2 刪除(生產(chǎn)中禁用命令)
drop table t1;
4.3.3 修改
- 在stu表中添加qq列
DESC stu;
ALTER TABLE stu ADD qq VARCHAR(20) NOT NULL UNIQUE COMMENT 'qq號';
- 在sname后加微信列
ALTER TABLE stu ADD wechat VARCHAR(64) NOT NULL UNIQUE COMMENT '微信號' AFTER sname ;
- 在id列前加一個新列num
ALTER TABLE stu ADD num INT NOT NULL COMMENT '數(shù)字' FIRST;
DESC stu;
- 把剛才添加的列都刪掉(危險)
ALTER TABLE stu DROP num;
ALTER TABLE stu DROP qq;
ALTER TABLE stu DROP wechat;
- 修改sname數(shù)據(jù)類型的屬性
ALTER TABLE stu MODIFY sname VARCHAR(128) NOT NULL ;
- 將sgender 改為 sg 數(shù)據(jù)類型改為 CHAR 類型
ALTER TABLE stu CHANGE sgender sg CHAR(1) NOT NULL DEFAULT 'n' ;
DESC stu;
4.3.4 表屬性查詢(DQL)
use school
show tables菇绵;
desc stu;
show create table stu;
CREATE TABLE ceshi LIKE stu;
5. DCL應用 ****
grant
revoke
6. DML應用
6.1 作用
對表中的數(shù)據(jù)行進行增镇眷、刪咬最、改
6.2 insert
--- 最標準的insert語句
INSERT INTO stu(id,sname,sage,sg,sfz,intime)
VALUES
(1,'zs',18,'m','123456',NOW());
SELECT * FROM stu;
--- 省事的寫法
INSERT INTO stu
VALUES
(2,'ls',18,'m','1234567',NOW());
--- 針對性的錄入數(shù)據(jù)
INSERT INTO stu(sname,sfz)
VALUES ('w5','34445788');
--- 同時錄入多行數(shù)據(jù)
INSERT INTO stu(sname,sfz)
VALUES
('w55','3444578d8'),
('m6','1212313'),
('aa','123213123123');
SELECT * FROM stu;
6.3 update
DESC stu;
SELECT * FROM stu;
UPDATE stu SET sname='zhao4' WHERE id=2;
注意:update語句必須要加where。
6.4 delete(危險G范S牢凇)
DELETE FROM stu WHERE id=3;
全表刪除:
DELETE FROM stu
truncate table stu;
區(qū)別:
delete: DML操作, 是邏輯性質(zhì)刪除,逐行進行刪除,速度慢.
truncate: DDL操作,對與表段中的數(shù)據(jù)頁進行清空,速度快.
偽刪除:用update來替代delete,最終保證業(yè)務中查不到(select)即可
1.添加狀態(tài)列
ALTER TABLE stu ADD state TINYINT NOT NULL DEFAULT 1 ;
SELECT * FROM stu;
2. UPDATE 替代 DELETE
UPDATE stu SET state=0 WHERE id=6;
3. 業(yè)務語句查詢
SELECT * FROM stu WHERE state=1;
7. DQL應用(select )
7.1 單獨使用
-- select @@xxx 查看系統(tǒng)參數(shù)
SELECT @@port;
SELECT @@basedir;
SELECT @@datadir;
SELECT @@socket;
SELECT @@server_id;
-- select 函數(shù)();
SELECT NOW();
SELECT DATABASE();
SELECT USER();
SELECT CONCAT("hello world");
SELECT CONCAT(USER,"@",HOST) FROM mysql.user;
SELECT GROUP_CONCAT(USER,"@",HOST) FROM mysql.user;
https://dev.mysql.com/doc/refman/5.7/en/func-op-summary-ref.html?tdsourcetag=s_pcqq_aiomsg
7.2 單表子句-from
SELECT 列1,列2 FROM 表
SELECT * FROM 表
例子:
-- 查詢stu中所有的數(shù)據(jù)(不要對大表進行操作)
SELECT * FROM stu ;
-- 查詢stu表中,學生姓名和入學時間
SELECT sname , intime FROM stu;
=====================
oldguo帶大家學單詞:
world ===>世界
city ===>城市
country ===>國家
countrylanguage ===>國家語言
city:城市表
DESC city;
ID : 城市ID
NAME : 城市名
CountryCode: 國家代碼具伍,比如中國CHN 美國USA
District : 區(qū)域
Population : 人口
SHOW CREATE TABLE city;
SELECT * FROM city WHERE id<10;
======================
7.3 單表子句-where
SELECT col1,col2 FROM TABLE WHERE colN 條件;
7.3.1 where配合等值查詢
例子:
-- 查詢中國(CHN)所有城市信息
SELECT * FROM city WHERE countrycode='CHN';
-- 查詢北京市的信息
SELECT * FROM city WHERE NAME='peking';
-- 查詢甘肅省所有城市信息
SELECT * FROM city WHERE district='gansu';
7.3.2 where配合比較操作符(> < >= <= <>)
例子:
-- 查詢世界上少于100人的城市
SELECT * FROM city WHERE population<100;
7.3.3 where配合邏輯運算符(and or )
例子:
-- 中國人口數(shù)量大于500w
SELECT * FROM city WHERE countrycode='CHN' AND population>5000000;
-- 中國或美國城市信息
SELECT * FROM city WHERE countrycode='CHN' OR countrycode='USA';
7.3.4 where配合模糊查詢
例子:
-- 查詢省的名字前面帶guang開頭的
SELECT * FROM city WHERE district LIKE 'guang%';
注意:%不能放在前面,因為不走索引.
7.3.5 where配合in語句
-- 中國或美國城市信息
SELECT * FROM city WHERE countrycode IN ('CHN' ,'USA');
7.3.6 where配合between and
例子:
-- 查詢世界上人口數(shù)量大于100w小于200w的城市信息
SELECT * FROM city WHERE population >1000000 AND population <2000000;
SELECT * FROM city WHERE population BETWEEN 1000000 AND 2000000;
7.4 group by + 常用聚合函數(shù)
7.4.1 作用
根據(jù) by后面的條件進行分組翅雏,方便統(tǒng)計,by后面跟一個列或多個列
7.4.2 常用聚合函數(shù)
**max()** :最大值
**min()** :最小值
**avg()** :平均值
**sum()** :總和
**count()** :個數(shù)
group_concat() : 列轉行
7.4.3 例子:
例子1:統(tǒng)計世界上每個國家的總人口數(shù).
USE world
SELECT countrycode ,SUM(population) FROM city GROUP BY countrycode;
例子2: 統(tǒng)計中國各個省的總人口數(shù)量(練習)
SELECT district,SUM(Population) FROM city WHERE countrycode='chn' GROUP BY district;
例子3:統(tǒng)計世界上每個國家的城市數(shù)量(練習)
SELECT countrycode,COUNT(id) FROM city GROUP BY countrycode;
7.5 having
where|group|having
例子4:統(tǒng)計中國每個省的總人口數(shù)人芽,只打印總人口數(shù)小于100
SELECT district,SUM(Population)
FROM city
WHERE countrycode='chn'
GROUP BY district
HAVING SUM(Population) < 1000000 ;
7.6 order by + limit
7.6.1 作用
實現(xiàn)先排序望几,by后添加條件列
7.6.2 應用案例
- 查看中國所有的城市,并按人口數(shù)進行排序(從大到小)
SELECT * FROM city WHERE countrycode='CHN' ORDER BY population DESC;
- 統(tǒng)計中國各個省的總人口數(shù)量萤厅,按照總人口從大到小排序
SELECT district AS 省 ,SUM(Population) AS 總人口
FROM city
WHERE countrycode='chn'
GROUP BY district
ORDER BY 總人口 DESC ;
- 統(tǒng)計中國,每個省的總人口,找出總人口大于500w的,并按總人口從大到小排序,只顯示前三名
SELECT district, SUM(population) FROM city
WHERE countrycode='CHN'
GROUP BY district
HAVING SUM(population)>5000000
ORDER BY SUM(population) DESC
LIMIT 3 ;
LIMIT N ,M --->跳過N,顯示一共M行
LIMIT 5,5
SELECT district, SUM(population) FROM city
WHERE countrycode='CHN'
GROUP BY district
HAVING SUM(population)>5000000
ORDER BY SUM(population) DESC
LIMIT 5,5;
7.7 distinct:去重復
SELECT countrycode FROM city ;
SELECT DISTINCT(countrycode) FROM city ;
7.8 聯(lián)合查詢- union all
-- 中國或美國城市信息
SELECT * FROM city
WHERE countrycode IN ('CHN' ,'USA');
SELECT * FROM city WHERE countrycode='CHN'
UNION ALL
SELECT * FROM city WHERE countrycode='USA'
說明:一般情況下,我們會將 IN 或者 OR 語句 改寫成 UNION ALL,來提高性能
UNION 去重復
UNION ALL 不去重復
7.9 join 多表連接查詢
7.9.0 案例準備
按需求創(chuàng)建一下表結構:
use school
student :學生表
sno: 學號
sname:學生姓名
sage: 學生年齡
ssex: 學生性別
teacher :教師表
tno: 教師編號
tname:教師名字
course :課程表
cno: 課程編號
cname:課程名字
tno: 教師編號
score :成績表
sno: 學號
cno: 課程編號
score:成績
-- 項目構建
drop database school;
CREATE DATABASE school CHARSET utf8;
USE school
CREATE TABLE student(
sno INT NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '學號',
sname VARCHAR(20) NOT NULL COMMENT '姓名',
sage TINYINT UNSIGNED NOT NULL COMMENT '年齡',
ssex ENUM('f','m') NOT NULL DEFAULT 'm' COMMENT '性別'
)ENGINE=INNODB CHARSET=utf8;
CREATE TABLE course(
cno INT NOT NULL PRIMARY KEY COMMENT '課程編號',
cname VARCHAR(20) NOT NULL COMMENT '課程名字',
tno INT NOT NULL COMMENT '教師編號'
)ENGINE=INNODB CHARSET utf8;
CREATE TABLE sc (
sno INT NOT NULL COMMENT '學號',
cno INT NOT NULL COMMENT '課程編號',
score INT NOT NULL DEFAULT 0 COMMENT '成績'
)ENGINE=INNODB CHARSET=utf8;
CREATE TABLE teacher(
tno INT NOT NULL PRIMARY KEY COMMENT '教師編號',
tname VARCHAR(20) NOT NULL COMMENT '教師名字'
)ENGINE=INNODB CHARSET utf8;
INSERT INTO student(sno,sname,sage,ssex)
VALUES (1,'zhang3',18,'m');
INSERT INTO student(sno,sname,sage,ssex)
VALUES
(2,'zhang4',18,'m'),
(3,'li4',18,'m'),
(4,'wang5',19,'f');
INSERT INTO student
VALUES
(5,'zh4',18,'m'),
(6,'zhao4',18,'m'),
(7,'ma6',19,'f');
INSERT INTO student(sname,sage,ssex)
VALUES
('oldboy',20,'m'),
('oldgirl',20,'f'),
('oldp',25,'m');
INSERT INTO teacher(tno,tname) VALUES
(101,'oldboy'),
(102,'hesw'),
(103,'oldguo');
DESC course;
INSERT INTO course(cno,cname,tno)
VALUES
(1001,'linux',101),
(1002,'python',102),
(1003,'mysql',103);
DESC sc;
INSERT INTO sc(sno,cno,score)
VALUES
(1,1001,80),
(1,1002,59),
(2,1002,90),
(2,1003,100),
(3,1001,99),
(3,1003,40),
(4,1001,79),
(4,1002,61),
(4,1003,99),
(5,1003,40),
(6,1001,89),
(6,1003,77),
(7,1001,67),
(7,1003,82),
(8,1001,70),
(9,1003,80),
(10,1003,96);
SELECT * FROM student;
SELECT * FROM teacher;
SELECT * FROM course;
SELECT * FROM sc;
7.9.1 語法
image
查詢張三的家庭住址
SELECT A.name,B.address FROM
A JOIN B
ON A.id=B.id
WHERE A.name='zhangsan'
7.9.2 例子:
- 查詢一下世界上人口數(shù)量小于100人的城市名和國家名
SELECT b.name ,a.name ,a.population
FROM city AS a
JOIN country AS b
ON b.code=a.countrycode
WHERE a.Population<100
- 查詢城市shenyang橄抹,城市人口靴迫,所在國家名(name)及國土面積(SurfaceArea)
SELECT a.name,a.population,b.name ,b.SurfaceArea
FROM city AS a JOIN country AS b
ON a.countrycode=b.code
WHERE a.name='shenyang';
7.9.3 別名
列別名,表別名
SELECT
a.Name AS an ,
b.name AS bn ,
b.SurfaceArea AS bs,
a.Population AS bp
FROM city AS a JOIN country AS b
ON a.CountryCode=b.Code
WHERE a.name ='shenyang';
7.9.4 多表SQL練習題
- 統(tǒng)計zhang3,學習了幾門課
SELECT st.sname , COUNT(sc.cno)
FROM student AS st
JOIN
sc
ON st.sno=sc.sno
WHERE st.sname='zhang3'
- 查詢zhang3,學習的課程名稱有哪些?
SELECT st.sname , GROUP_CONCAT(co.cname)
FROM student AS st
JOIN sc
ON st.sno=sc.sno
JOIN course AS co
ON sc.cno=co.cno
WHERE st.sname='zhang3'
- 查詢oldguo老師教的學生名.
SELECT te.tname ,GROUP_CONCAT(st.sname)
FROM student AS st
JOIN sc
ON st.sno=sc.sno
JOIN course AS co
ON sc.cno=co.cno
JOIN teacher AS te
ON co.tno=te.tno
WHERE te.tname='oldguo';
- 查詢oldguo所教課程的平均分數(shù)
SELECT te.tname,AVG(sc.score)
FROM teacher AS te
JOIN course AS co
ON te.tno=co.tno
JOIN sc
ON co.cno=sc.cno
WHERE te.tname='oldguo'
4.1 每位老師所教課程的平均分,并按平均分排序
SELECT te.tname,AVG(sc.score)
FROM teacher AS te
JOIN course AS co
ON te.tno=co.tno
JOIN sc
ON co.cno=sc.cno
GROUP BY te.tname
ORDER BY AVG(sc.score) DESC ;
- 查詢oldguo所教的不及格的學生姓名
SELECT te.tname,st.sname,sc.score
FROM teacher AS te
JOIN course AS co
ON te.tno=co.tno
JOIN sc
ON co.cno=sc.cno
JOIN student AS st
ON sc.sno=st.sno
WHERE te.tname='oldguo' AND sc.score<60;
5.1 查詢所有老師所教學生不及格的信息
SELECT te.tname,st.sname,sc.score
FROM teacher AS te
JOIN course AS co
ON te.tno=co.tno
JOIN sc
ON co.cno=sc.cno
JOIN student AS st
ON sc.sno=st.sno
WHERE sc.score<60;
7.9.5 綜合練習
1. 查詢平均成績大于60分的同學的學號和平均成績;
2. 查詢所有同學的學號楼誓、姓名玉锌、選課數(shù)、總成績疟羹;
3. 查詢各科成績最高和最低的分:以如下形式顯示:課程ID主守,最高分,最低分
4. 統(tǒng)計各位老師,所教課程的及格率
5. 查詢每門課程被選修的學生數(shù)
6. 查詢出只選修了一門課程的全部學生的學號和姓名
7. 查詢選修課程門數(shù)超過1門的學生信息
8. 統(tǒng)計每門課程:優(yōu)秀(85分以上),良好(70-85),一般(60-70),不及格(小于60)的學生列表
9. 查詢平均成績大于85的所有學生的學號阁猜、姓名和平均成績
8.information_schema.tables視圖
DESC information_schema.TABLES
TABLE_SCHEMA ---->庫名
TABLE_NAME ---->表名
ENGINE ---->引擎
TABLE_ROWS ---->表的行數(shù)
AVG_ROW_LENGTH ---->表中行的平均行(字節(jié))
INDEX_LENGTH ---->索引的占用空間大型枰荨(字節(jié))
- 查詢整個數(shù)據(jù)庫中所有庫和所對應的表信息
SELECT table_schema,GROUP_CONCAT(table_name)
FROM information_schema.tables
GROUP BY table_schema;
- 統(tǒng)計所有庫下的表個數(shù)
SELECT table_schema,COUNT(table_name)
FROM information_schema.TABLES
GROUP BY table_schema
- 查詢所有innodb引擎的表及所在的庫
SELECT table_schema,table_name,ENGINE FROM information_schema.`TABLES`
WHERE ENGINE='innodb';
- 統(tǒng)計world數(shù)據(jù)庫下每張表的磁盤空間占用
SELECT table_name,CONCAT((TABLE_ROWS*AVG_ROW_LENGTH+INDEX_LENGTH)/1024," KB") AS size_KB
FROM information_schema.tables WHERE TABLE_SCHEMA='world';
- 統(tǒng)計所有數(shù)據(jù)庫的總的磁盤空間占用
SELECT
TABLE_SCHEMA,
CONCAT(SUM(TABLE_ROWS*AVG_ROW_LENGTH+INDEX_LENGTH)/1024," KB") AS Total_KB
FROM information_schema.tables
GROUP BY table_schema;
mysql -uroot -p123 -e "SELECT TABLE_SCHEMA,CONCAT(SUM(TABLE_ROWS*AVG_ROW_LENGTH+INDEX_LENGTH)/1024,' KB') AS Total_KB FROM information_schema.tables GROUP BY table_schema;"
- 生成整個數(shù)據(jù)庫下的所有表的單獨備份語句
模板語句:
mysqldump -uroot -p123 world city >/tmp/world_city.sql
SELECT CONCAT("mysqldump -uroot -p123 ",table_schema," ",table_name," >/tmp/",table_schema,"_",table_name,".sql" )
FROM information_schema.tables
WHERE table_schema NOT IN('information_schema','performance_schema','sys')
INTO OUTFILE '/tmp/bak.sh' ;
CONCAT("mysqldump -uroot -p123 ",table_schema," ",table_name," >/tmp/",table_schema,"_",table_name,".sql" )
- 107張表,都需要執(zhí)行以下2條語句
ALTER TABLE world.city DISCARD TABLESPACE;
ALTER TABLE world.city IMPORT TABLESPACE;
SELECT CONCAT("alter table ",table_schema,".",table_name," discard tablespace")
FROM information_schema.tables
WHERE table_schema='world'
INTO OUTFILE '/tmp/dis.sql';
9. show 命令
show databases; #查看所有數(shù)據(jù)庫
show tables; #查看當前庫的所有表
SHOW TABLES FROM #查看某個指定庫下的表
show create database world #查看建庫語句
show create table world.city #查看建表語句
show grants for root@'localhost' #查看用戶的權限信息
show charset剃袍; #查看字符集
show collation #查看校對規(guī)則
show processlist; #查看數(shù)據(jù)庫連接情況
show index from #表的索引情況
show status #數(shù)據(jù)庫狀態(tài)查看
SHOW STATUS LIKE '%lock%'; #模糊查詢數(shù)據(jù)庫某些狀態(tài)
SHOW VARIABLES #查看所有配置信息
SHOW variables LIKE '%lock%'; #查看部分配置信息
show engines #查看支持的所有的存儲引擎
show engine innodb status\G #查看InnoDB引擎相關的狀態(tài)信息
show binary logs #列舉所有的二進制日志
show master status #查看數(shù)據(jù)庫的日志位置信息
show binlog evnets in #查看二進制日志事件
show slave status \G #查看從庫狀態(tài)
SHOW RELAYLOG EVENTS #查看從庫relaylog事件信息
desc (show colums from city) #查看表的列定義信息
http://dev.mysql.com/doc/refman/5.7/en/show.html