1、数据库登录:
1.登录本地的MYSQL数据库:mysql -u root -p
2.连接远程主机上的MYSQL数据库:mysql -h 192.168.191.2 -u root -p 123456
密码修改:mysqladmin -u root -p 旧密码 -password 新密码
mysqladmin -u root -p abs123 -password 123456
2、增加新用户并指定用户的权限,命令格式:grant 权限,权限2,... on 数据库名.数据表 to 用户名@用户的地址 identified by 密码
grant select ,insert,create,drop on test.student to peter@192.168.15.12 identifiled by 'abc123'
3、数据库备份:mysqldump -h 主机名 -P 端口号 -u 用户名 -p 密码 databasename datatablename > out.sql
导出数据库所有数据:mysqldump -u root -p 123456 test > out.sql
导出数据库数据表数据:mysqldump -u root -p 123456 test student > out.sql
导出数据库的表结构,不导出数据 mysqldump -u root -p --opt -d test > out.sql
导出数据而不导出结构 mysqldump -u root -p -t -d test > out.sql
导出特定表的结构 mysqldump -u root -p -d test --table student > out.sql
数据导入:
mysql test < out.sql
source out.sql
4、mysql 数据类型总结
MYSQL 数据类型
含义
整型
tinyint
1个字节
smallint
2个字节
mediumint
3个字节
int(m)
4个字节
bigint(m)
8个字节
浮点数
float(m,d)
单精度浮点数
double(m,d)
双精度浮点数
字符串
char(n)
固定长度,最多255个字符
varchar(n)
可变长度,最多65535个字符
tinytext
可变长度,最多255个字符
text
可变长度,最多65535个字符
mediumtext
可变长度,最多2的24-1次方个字符
longtext
可变长度,最多2的32-1次方个字符
二进制数据
tinyblob
0-255字节
blod
mediumblod
long blod
日期时间类型
date
日期 2019-05-29
time
时间 21:12:12
datetime
日期时间 2019-05-29 21:12:12
timestamp
自动存储记录修改时间,可以存放最后被修改的时间
5、MYSQL 关键字
MYSQL 关键字
含义
NULL
数据列可以为NULL
NOT NULL
数据列不可以包含NULL值
DEFAULT
默认值
PRIMARY KEY
主键
AUTO_INCREMENT
自动递增,适用于整数类型·
UNSIGNED
无符号
CHARACTER SET name
指定一个字符集
6、创建数据库和数据表:create database 数据库名称 [其他选项]
7、使用数据库:use 数据库名
8、创建数据表: create table 表名(列声明1,列声明2,列声明3...)
例子:创建学生记录表,表有学号(ID),姓名(name),性别(sex),年龄(age), 入学日期(school_day)
create table student(
id int unsigned not null primary key,
name varchar(10) not null,
sex char(4) not null,
age tinyint unsigned not null ,
school_day datetime not null
)
9、数据表的增删改查操作
插入新数据:insert into student values(101,'peter','male','17','2019-5-29 12:12:00')
mysql> select * from student;
+----------+------------+-----------+-----------+---------------------+
| id | name | sex | age | school_day |
+----------+------------+-----------+-----------+---------------------+
| 101 | peter | male | 17 | 2019-05-29 12:12:00 |
+----------+------------+-----------+-----------+---------------------+
更新数据记录: update student set age=23 where id=101
删除操作:delete from student where age=18;
10、关于表格结构的操作
添加列:alter table student add address varchar(100) after age;
更改列的名称:alter table student change address addr char(69);
删除列:alter table student drop addr;
重命名表格:alter table student rename students;
11、删除数据库和数据表
删除表:drop table student;
删除数据库:drop database test;