1. 安装
cp mysql-5.6.22-osx10.9-x86_64.tar.gz /usr/local
cd /usr/local
tar zxvf mysql-5.6.22-osx10.9-x86_64.tar.gz
mv mysql-5.6.22-osx10.9-x86_64 mysql
MySQL文件夹目录介绍
- bin:常用命令
- data:保存数据文件以及日志文件
- docs/man:保存MySQL的一些帮助文档
- include/lib:保存MySQL的一些头文件和一些库函数
- scripts:有一个初始化脚本,用来初始化一些系统表
- share:用来保存一些配置文件和一些错误信息等
// 运行前先初始化一下
./scripts/mysql_install_db
cd bin
mysqld
// command+T
cd /usr/local/mysql/bin
mysql -u root
数据库命令
// 查看所有数据库
show databases;
// 进入test数据库
use test;
// 查看test下所有数据库表
show tables;
// 退出数据库操作
quit;
关闭数据库
ps -ef |grep mysql
kill -9 53882
2. SQL语言简介
select+字段:select use_name,age
from+表:from tbl_user
where+条件:where age > 18
数据定义
- create table:创建一个表
- drop table:从数据库中删除指定的表
- alter table:修改指定表的表结构
- create index:创建一个索引
- drop index:删除一个索引
- create procedure:创建一个存储过程
- drop procedure:删除一个存储过程
数据操作
- select:用于从数据库表中检索数据行
- insert:用于向数据库中添加新的数据行
- update:更新指定的数据
- delete:删除指定的数据行
权限控制
- grant:用于授用户访问权限
- revoke:用于解除用户访问权限
事务控制
- commit:提交事务
- rellback:回滚事务
3. 数据类型
整数
- tinyint:一个字节8位
- smaillint:两个字节
- mediumint:3个字节
- int:4个字节
- bigint:8个字节
实数
- FLOAT:4字节
- DOUBLE
- DECIMAL:最精确
字符串
- VARCHAR:保存可变长度的字符串
- CHAR:固定长度的字符串。固定为创建表时声明的长度(存储时没有达到指定长度,尾部会添加空格,检索时尾部的空格会被删除掉)
- TEXT
- TINYTEXT
- TEXT
- MEDIUMTEXT
- LONGTEXT
- BLOB
- TINYBLOB
- BLOB
- MEDIUMBLOB
- LONGBLOB
日期
- DATETIME:1001年~9999年,8字节
- TIMESTAMP:时间戳,1970年~2038年,4字节
4. 基本操作
数据库管理软件:mysql-workbench
https://dev.mysql.com/downloads/file/?id=474219
查看表的数据类型
表->右键->Table Inspector->Columns
用mysql-workbench创建数据表
1.新建数据表-> Apply -> Apply
2.
3.
# 创建表
CREATE TABLE tbl_user (
user_name VARCHAR(20),
age INT,
signup_date DATE
);
# 插入数据
insert into tbl_user values('darkmi', '28', '2018-10-10');
insert into tbl_user values('darkmi2', '28', '2018-10-10');
insert into tbl_user values('darkmi3', '28', '2018-10-10');
insert into tbl_user values('darkmi4', '28', '2018-10-10');
# 查询数据
select * from tbl_user;
select user_name, age, signup_date from tbl_user;
select * from tbl_user where user_name = 'darkmi2';
select * from tbl_user where user_name = 'darkmi3' and age = '28';
# 修改数据
update tbl_user set age = 30 where user_name = 'darkmi2';
# 添加加键
alter table tbl_user add email varchar(50);
# 删除键
alter table tbl_user drop email;
# 修改键名
alter table tbl_user change age user_age int;
#修改列的类型定义
alter table tbl_user change user_age user_age tinyint(1) not null;
# 重命名表名
alter table tbl_user rename user_tbl;
# 删除表
drop table tbl_user;