数据库
指长期保存在计算机的储存设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。database 简写(dbs)
MySQL 是其中的一款免费开源,小型,关系型,能够真正的多用户,多线程sql数据管理系统,拥有免费,开源,体积小,速度快等特点。
术语
- 数据库:保存有组织的书库和容器。
- 表: 某种特定类型数据的结构化清单(具有固定的列数和任意的行数)。
- 列: 表中的一个字段,所有表都是由一个或多个列组成。
- 主键: 主键是唯一的 一个数据表中只能包含一个主键。
- 外键: 外键用于关联两个表。
管理服务:
启动:
service mysql start 或者 systemctl start mysql
停止:
service mysql stop 或者 systemctl stop mysql
重启:
service mysql restart 或者 systemctl restart mysql
查看mysql服务状态:
service mysql status 或者 systemctl status mysql
首次登录系统:
mysql -h localhost -u root -p
授权root用户:
GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
刷新权限:
FLUSH PRIVILEGES;
退出命令;
exit
库的操作命令
创建库:
create database 数据库名
create chema 数据库名
查看库:
show databases;
创建指定字符集的数据库:
create database 数据库名 charset=''
创建数据库前,判断数据库是否存在,不存在则创建:
CREATE DATABASE IF NOT EXISTS 数据库名称。
选择数据库:
use 数据库名。
查看对当前所在数据库:
select database();
查看当前数据库编码格式:
show variables like 'character_set_database';
修改数据库:
ALTER {DATABASE | SCHEMA} [数据库名] [DEFAULT] CHARACTER SET [=] 字符集 | [DEFAULT] COLLATER [=] 较对规则名称
删除数据库:
drop database 数据库名;
查看数据库默认的储存引擎;
查看支持的全部储存引擎;
show engines;
查看数据库默认的存储引擎:
SHOW VARIABLES LIKE 'default_storage_engine';
表的操作命令
创建表:
create table 表名(
列 类型 约束 属性,
列 类型 约束 属性
);
- 涉及到的属性:primary key (某一列名)
- 涉及到的约束: 主键、 default (默认值)、not null(不能为空)、auto_increment(自增)
查看表:
show tables;
查看表详细信息:
show create table 表名;
查看表结构:
desc 表名;
查看某一列信息:
desc 表名 列名;
添加列:
alter atble 表名 add 列名;
修改字段名(列):
alter table 表名 change 字段名 新字段名 数据类型;
删除字段名(列):
alter table 表名 drop 字段名;
修改默认值:
alter table 表名 alter 字段名 set default 值;
自改表名:
alter table 表名 rename as 新表名;
删除表:
drop table [if exists] 表名;
复制表:
create table [if not exists ] 表名 like 源数据表名;
插入完整行:
ins