首页 > 代码库 > Linux下mysql基本操作小结

Linux下mysql基本操作小结

shell> mysql -uroot -p       //以root用户连接mysql,默认密码为空

注意:mysql的大部分命令都需以";"(分号)结束;对大小写不敏感!

mysql> show databases;    //显示数据库列表
mysql> use 数据库名          //选中指定的数据库
mysql> show tables;           //显示选中数据库中的数据表列表
mysql> select * from 表名;  //显示指定数据表的内容
mysql> create database 数据库名;     //创建数据库
mysql> create table user_info(           //创建数据表
    -> id int(6) not null auto_increment,
    -> username varchar(20) not null, 
    -> password varchar(20) not null,
    -> email varchar(50) not null,
    -> key id (id));
因为使用了auto_increment (自动增长),所以必须指定key id。

mysql> describe 表名;                //显示表的结构
mysql> insert into user_info values    //插入数据到表中
    -> (‘1‘, ‘aa‘, ‘11‘, ‘aa@xxx.com‘),
    -> (‘2‘, ‘bb‘, ‘22‘, ‘bb@xxx.com‘), 
    -> (‘3‘, ‘cc‘, ‘33‘, ‘cc@xxx.com‘); 
插入数据有两种写法,上面是第一种,这种写法需要给出每一列的值!

第二种:
mysql> insert into user_info(username, password, email) values    //插入数据到表中
    -> (‘aa‘, ‘11‘, ‘aa@xxx.com‘),
    -> (‘bb‘, ‘22‘, ‘bb@xxx.com‘), 
    -> (‘cc‘, ‘33‘, ‘cc@xxx.com‘); 
因为第一个id被设置为auto_increment了,所以系统会自动添加!如果这里也像第一种省略了列条目,则就会提示列数不匹配的错误;

mysql> drop database 数据库名;    //删除数据库
mysql> drop table 表名;                  //删除数据表
mysql> delete from 表名;                //清空数据表

mysql> grant select,insert,delete,update       //为数据库指定一个专门的用户进行管理
    -> on 数据库名.* to username@localhost
    -> identified by ‘password‘;
该命令用于创建用户并指定权限,注意username和password不能太简单,否则创建不成功!
mysql> mysql -uusername -p    //然后输入999用户的密码后就会以999用户进行管理mysql了

mysql> alter table 表名 add ‘列名‘ VARCHAR(12);       //在表中增加一列
mysql> alter table 表名 change ‘列名1‘ ‘列名2‘ VARCHAR(12);        //更改列名
mysql> alter table 表名 drop ‘列名‘;       //删除一列
mysql> alter table 表名 rename t2;        //修改表名

mysql> drop database if exists school;        //如果存在SCHOOL则删除 
mysql> load data local infile "file" into table 表名;    //文本数据应符合的格式:字段数据之间用tab键隔开,null值用\n来代替.

备份数据库:
导出:mysqldump -u用户名 -p密码 数据库名 表名 > out.sql
导入:mysql -u用户名 -p密码 --database=数据库名 < out.sql 

备份数据表:    
导出:mysqldump -uroot test table1 > ./out.sql
导入:mysql -uroot --database=test < ./out.sql

列数据类型:分为数字型、字符串型和日期
1、数字型:以字串的形式存储,decima/numeric;分为整形和浮点型,可以有两个选项:unsigned(无符号,只存储正数)和zerofill(用0填充而不是空格)

  • 小数型:float/double
  • 整数型:int bigint tinyint

范例:create table a (id int zerofill);

2、字符串型
char varchar等

3、日期型
datetime timestamp等

4、枚举型
enum(‘男‘,‘女‘)

Linux下mysql基本操作小结