MYSQL常用查指令
mysql>selectversion();检查MySQL的版本号
mysql>selectcurrent_date();检查MySQL的当时日期
mysql>selectversion(),current_date();一起检查MySQL的版本号和当时日期
mysql>showdatabases;显现当时存在的数据库
mysql>USEmysql挑选运用数据库(USE和QUIT指令不需要分号结束)
Databasechanged
mysql>selectdatabase();显现当时挑选的数据库
mysql>showtables;显现当时数据库中存在的表
mysql>select*fromdb;显现表(db)的内容
mysql>describemytable;显现表的结构
或showcolumnsfrom表名;
mysql>select
->user()
->c
mysql>
检查MySQL当时用户占用的衔接数
指令:showprocesslist;
假如是root帐号,你能看到一切用户的当时衔接。假如是其它一般帐号,只能看到自己占用的衔接。
showprocesslist;只列出前100条,假如想全列出请运用showfullprocesslist;
mysql>showprocesslist;

mysql

一。数据库:
mysql>CREATEDATABASEabccs;创立一个数据库
mysql>USEabccs挑选运用数据库
mysql>dropdatabase数据库名;删去数据库
二。表:
1。创立一个表mytable:
mysql>CREATETABLEmytable
->(
->nameVARCHAR(20),
->sexCHAR(1),
->birthDATE,
->birthaddrVARCHAR(20)
->);
建立一个职工生日表,表的内容包含职工姓名、性别、出世日期、出世城市。
由于name、birthadd的列值是变化的,因而挑选VARCHAR,其长度纷歧定是20。
能够挑选从1到255的任何长度,假如以后需要改动它的字长,能够运用ALTERTABLE句子。
性别只需一个字符就能够表示:”m”或”f”,因而选用CHAR(1);
birth列则运用DATE数据类型。
2。查询刚添加的记载:
mysql>select*frommytable;
Emptyset(0.00sec)这说明刚才创立的表还没有记载。
3。添加新记载:
mysql>insertintomytable
->values
->(
->’abccs’,
->’f’,
->’1977-07-07′,
->’china’
->);
4。用文本方式将数据装入一个数据库表:
一条一条地添加新记载,实在太麻烦。
创立一个文本文件“mysql.txt”,按表结构排好每行每条记载,用定位符(tab)把值分隔。
abccsf1977-07-07china
maryf1978-12-12usa
tomm1970-09-02usa
运用此指令将文本文件“mytable.txt”装载到表中:
mysql>Loaddatalocalinfile”mytable.txt”intotablemytable;
数据传入指令loaddatalocalinfile”文件名”intotable表名;
注意:你最好将文件仿制到mysql/bin目录下,而且要先用use指令选表地点的库。
5。更新记载:
mysql>updatemytablesetbirth=”1973-09-02″wherename=”tom”;
6。删去记载:
mysql>deletefrommytablewhereid=10;//删去掉一切id=10的记载;
mysql>deletefrommytablewhereid=10limit1;//限制删去掉1条id=10的记载;
mysql>deletefrommytable//删去一个表的悉数记载;
mysql>DELETEFROMt1WHEREC>10;
mysql>droptabletablename1,tablename2,…;//删去整一个表或多个表,当心运用。
7。重命名表:
mysql>altertablet1renamet2;
8。修正mysql的表结构:
检查mysql的表结构:
mysql>describemytable;或用showcolumnsfrom表名;
修正字段特点
mysql>altertabletablenamemodifyidint(10)unsignedauto_incrementprimarykeynotnull
修正默认值
mysql>altertabletablenamealteriddefault0
给字段添加primarykey
mysql>altertabletablenameaddprimarykey(id);
删去primarykey
1、altertabletablenamedropprimarykey;
2、dropprimarykeyontablename;
修正table表数据引擎
mysql>altertabletableNameENGINE=MyISAM(InnoDB);
添加一新字段名:
mysql>altertablemytableaddcolumnsinglechar(1);
mysql>ALTERTABLEtableADDfieldINT(11)UNSIGNEDNOTNULL
删去字段
mysql>altertablet2dropcolumnc;
附:
为了改动列a,从INTEGER改为TINYINTNOTNULL(姓名一样),
而且改动列b,从CHAR(10)改为CHAR(20),一起重命名它,从b改为c:
ALTERTABLEt2MODIFYaTINYINTNOTNULL,CHANGEbcCHAR(20);
添加一个新TIMESTAMP列,名为d:
ALTERTABLEt2ADDdTIMESTAMP;
在列d上添加一个索引,而且使列a为主键:
ALTERTABLEt2ADDINDEX(d),ADDPRIMARYKEY(a);
添加一个新的AUTO_INCREMENT整数列,命名为c:
ALTERTABLEt2ADDcINTUNSIGNEDNOTNULLAUTO_INCREMENT,ADDINDEX(c);
注意,我们索引了c,由于AUTO_INCREMENT柱有必要被索引,
而且另外我们声明c为NOTNULL,由于索引了的列不能是NULL。
运用name列的头10个字符创立一个索引:
CREATEINDEXpart_of_nameONcustomer(name(10));
三。数据的备份与康复:
导出和导入数据:(指令在DOS的mysql/bin目录下履行)
导出表
mysqldump–optschool>school.sql
注释:将数据库school中的表悉数备份到school.sql文件,school.sql是一个文本文件,
文件名任取,翻开看看你会有新发现。
mysqldump–optschoolteacherstudent>school.teacher.student.sql
注释:将数据库school中的teacher表和student表备份到school.teacher.student.sql文
件,school.teacher.student.sql是一个文本文件,文件名任取,翻开看看你会有新发现。
导入表
mysql
mysql>createdatabaseschool;
mysql>useschool;
mysql>sourceschool.sql;
(或将school.sql换为school.teacher.sql/school.teacher.student.sql)
导出数据库
mysqldump–databasesdb1db2>db1.db2.sql
注释:将数据库dbl和db2备份到db1.db2.sql文件,db1.db2.sql是一个文本文件,文件名
任取,翻开看看你会有新发现。
(举个例子:
mysqldump-hhost-uuser-ppass–databasesdbname>file.dump
便是把host上的以姓名user,口令pass的数据库dbname导入到文件file.dump中。)
导入数据库
mysql<db1.db2.sql
仿制数据库mysqldump–all-databases>all-databases.sql
注释:将一切数据库备份到all-databases.sql文件,all-databases.sql是一个文本文件,文件名任取。
导入数据库
mysql
mysql>dropdatabasea;
mysql>dropdatabaseb;
mysql>dropdatabasec;

mysql>sourceall-databases.sql;(或exit退出mysql后mysql<all-databases.sql)
mysql备份和康复的指令
备份和康复的指令分别为:
备份:mysqldump–force–add-drop-table–extended-insert-h”数据库主机名”-u”用户名”-p”密码””数据库名”>备份数据文件名
康复:mysql-h”数据库主机名”-u”用户名”-p”密码””数据库名”<备份数据文件名
备份文件名可为d:sql.bak
示例:
在DOSCMD形式下备份用mysqldump-uroot-p*****ksedata>d:sql.bak
康复用mysql-uroot-p*****ksedata
当然能够用-h指定主机名

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。