mysql常用命令

1、

mysql> select version();       查看MySQL的版本号
mysql> select current_date();       查看MySQL的当前日期
mysql> select version(),current_date(); 同时查看MySQL的版本号和当前日期
mysql> show databases;           显示当前存在的数据库
mysql> USE mysql           选择使用数据库(USE和QUIT命令不需要分号结束)
Database changed
mysql> select database();       显示当前选择的数据库
mysql> show tables;           显示当前数据库中存在的表
mysql> select * from db;       显示表(db)的内容  
mysql> describe mytable;       显示表的结构
或show columns from 表名;

2、

查看MySQL当前用户占用的连接数

命令: show processlist;
如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接。
show processlist;只列出前100条,如果想全列出请使用show full processlist;
mysql> show processlist;

 

3、

用文本方式将数据装入一个数据库表:
一条一条地添加新记录,实在太麻烦。
创建一个文本文件“mysql.txt”,按表结构排好每行每条记录,用定位符(tab)把值分开。
abccs f 1977-07-07 china  
mary f 1978-12-12 usa
tom m 1970-09-02 usa
使用此命令将文本文件“mytable.txt”装载到表中:   
mysql> Load data local infile "mytable.txt" into table mytable;

数据传入命令load data local infile "文件名" into table 表名;
注意:你最好将文件复制到mysql/bin目录下,并且要先用use命令选表所在的库。

 

4、

8。修改mysql的表结构:

查看mysql的表结构:
mysql> describe mytable;   或用show columns from 表名;

修改字段属性
mysql> alter table tablename modify id int(10) unsigned auto_increment primary key not null

修改默认值
mysql> alter table tablename alter id default 0

给字段增加primary key
mysql> alter table tablename add primary key(id);

删除primary key
1、alter table tablename drop primary key;
2、drop primary key on tablename;

修改table表数据引擎
mysql> alter table tableName ENGINE = MyISAM (InnoDB);

增加一新字段名:
mysql> alter table mytable add column single char(1);
mysql> ALTER TABLE table ADD field INT(11) UNSIGNED NOT NULL

删除字段
mysql> alter table t2 drop column c;

附:
为了改变列a,从INTEGER改为TINYINT NOT NULL(名字一样),
并且改变列b,从CHAR(10)改为CHAR(20),同时重命名它,从b改为c:
ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);

增加一个新TIMESTAMP列,名为d:
ALTER TABLE t2 ADD d TIMESTAMP;

在列d上增加一个索引,并且使列a为主键:
ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a);

增加一个新的AUTO_INCREMENT整数列,命名为c:
ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);

注意,我们索引了c,因为AUTO_INCREMENT柱必须被索引,
并且另外我们声明c为NOT NULL,因为索引了的列不能是NULL。

使用name列的头10个字符创建一个索引:
CREATE INDEX part_of_name ON customer (name(10));

 

5、

数据的备份与恢复:

导出和导入数据:(命令在DOS的mysql/bin目录下执行)
导出表
mysqldump --opt school > school.sql
注释:将数据库school中的表全部备份到school.sql文件,school.sql是一个文本文件,
文件名任取,打开看看你会有新发现。
mysqldump --opt school teacher student > school.teacher.student.sql
注释:将数据库school中的teacher表和student表备份到school.teacher.student.sql文
件,school.teacher.student.sql是一个文本文件,文件名任取,打开看看你会有新发现。

导入表
mysql
mysql>create database school;
mysql>use school;
mysql>source school.sql;
(或将school.sql换为school.teacher.sql / school.teacher.student.sql)

导出数据库
mysqldump --databases db1 db2 > db1.db2.sql
注释:将数据库dbl和db2备份到db1.db2.sql文件,db1.db2.sql是一个文本文件,文件名
任取,打开看看你会有新发现。
(举个例子:
mysqldump -h host -u user -p pass --databases dbname > 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>drop database a;
mysql>drop database b;
mysql>drop database c;
...
mysql>source all-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 -u root -p ***** ksedata >d:\sql.bak
恢复用mysql -u root -p ***** ksedata <d:\sql.bak

当然可以用-h指定主机名

你可能感兴趣的:(数据结构,sql,c,mysql,db2)