IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 初始mysql -> 正文阅读

[大数据]初始mysql

数据库基础

1.1链接服务器

cmd下输入

mysql -h 127.0.0.1 -p 3306 -u root -p

注意
如果没有写 -h 127.0.0.1 默认链接本地
如果没有写-p 3306 默认是链接3306端口号

1.2 服务器,数据库,表关系

  • 所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。
  • 为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。
  • 数据库服务器、数据库和表的关系如下:
Client
MySQL
DB
DB

1.3存储引擎

1.31什么数据库引擎

存储引擎是:数据库管理系统如何存储数据,如何为数据库建立索引和如何更新、查询数据等技巧。
MySQL的核心就是插件式存储引擎,支持多种存储引擎。

1.32如何查看存储的引擎

show engines;
在这里插入图片描述

库的操作

2.1创建数据库

语法

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] …]

[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name

说明

  • 大写的表示关键字
  • [] 是可选项 [IF NOT EXISTS] 表示如果数据库不存在才创建数据库
  • CHARACTER SET:指定数据库采用的字符集
  • COLLATE:指定数据库字符集的校验规则

2.2 创建数据库案例

  • 创建一个tmp数据库
create database tmp;

运行结果如下:
在这里插入图片描述
此时说明一下:当我们没有指定字符集和校验规则时,系统默认字符集utf8,校验规则是:utf8_general_ci

  • 创建一个使用utf8字符集的tmp2数据库
create database tmp2 charset=utf8;

运行结果如下
在这里插入图片描述

  • 创建一个使用utf字符集,并带校对规则的 db3 数据库。
create database tmp3 charset=utf8 collate utf8_general_ci;

运行结果如下
在这里插入图片描述

  • 使用数据库
use databaseName;

示例
在这里插入图片描述

2.3字符集和校验规则

2.3.1查看系统默认的字符集以及校验规则

show variables like 'character_set_database';
show variables like 'collation_database';

2.3.2查看数据库支持的字符集

show charset

字符集的作用:主要控制用什么语言
举个例子utf8就可以使用中文,而有的字符集使用中文是一团乱码

2.3.3查看数据库支持的字符集校验规则

show collation

2.3.4校验规则对数据库的影响

  • 不区分大小写
    创建一个数据库,校验规则使用utf8_general_ci (不区分大小写)
create database test1 collate utf8_general_ci;
use test1;
create table person(name varchar(20));
insert into person values('a');
insert into person values('A');
insert into person values('b');
insert into person values('B');
select * from person where name='a';

最终结果如下:
在这里插入图片描述
创建一个数据库,校验规则为utf8_bin (区分大小写)

create database test2 collate utf8_bin;
use test2;
create table person(name varchar(20));
insert into person values('a');
insert into person values('A');
insert into person values('b');
insert into person values('B');
select * from person where name='a';

最终结果如下:
在这里插入图片描述

2.4.2显示创建语句

show create database 数据库名

示例:
在这里插入图片描述
说明:

  • MySQL建议我们关键字大写,但是不是必须的。
  • 数据库名字反引号`,'是为了防止使用的数据库名刚好是关键字
  • /*!40100 default… */ 这个不是注释,表示当前mysql版本大于4.01版本,就执行这句话

2.4.3修改数据库

语法:

ALTER DATABASE db_name [alter_spacification [,alter_spacification]…]
alter _spacification :
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name

  • 对数据库的修改主要指的是修改数据库的字符集,校验规则
    举个例子:将test1数据库字符集修改成gbk
    在这里插入图片描述
    自己用show create dabases test1;检测

2.4.4数据库删除

drop database [IF EXISTS] db_name;
执行后结果:

  • 数据库内看不到对应的数据库
  • 对应的数据库文件夹被删除,级删除,里面的数据表全被删除

2.4.5 备份和恢复

2.4.5.1备份

语法

mysqldump -p3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径(绝对路径)

2.4.5.2还原

语法

source 文件路径(绝对路径)

2.4.5.3 注意事项

  • 如果备份的不是整个数据库,而是其中一张表

mysqldump -u root -p 数据库名 表名1 表名2 > 备份的路径

  • 如果要备份的是多个数据库

mysqldump -u root -p -B 数据库名1 数据库名2 >备份的存放路径

3表的操作

3.1创建表

语法

CREATE TABLE table_name(
field1 datatype,
field2 datatype,
field3 datatype (切记最后一列没有逗号)
)character set 字符集 collate 校验规则 engine 存储引擎;
说明:

  • file表示列名
  • datatype表示列的类型
  • character set 字符集 ,如果没有指定的字符集,则以所在的数据库的字符集为准
  • collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
    接下来就来创建个表
create table users(
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment '生日'
)character set utf8 engine MyISAM;

此处的comment相当于一个注释—方便于我们要使用时可以借助show create table users; 查看备注

3.3查看表结构

desc 表名;
拿上面的users来看看
在这里插入图片描述

3.4修改表

在项目的实际开发中,我们要经常修改某个表的结构,比如字段名称,字段大小,字段类型,表的字符集属性等等。

ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]…);
ALTER TABLE tablename MODIfy (column datatype [DEFAULT expr][,column datatype]…);
ALTER TABLE tablename DROP (column);
案例:

  • 往表中插入数据
insert into users values(1,'a','b','2000-01-01');
  • 在users添加一个字段,用于保存图片路径
alter table users add assets varchar(100) comment '图片路径';  

此语句默认把此字段放在表的最后一位

alter table users add assets varchar(100) comment '图片路径 after birthday;

把assert字段放在birthday后面

  • 修改 name,将其长度改为60
alter table users modify name varchar(60);

在这里插入图片描述
使用desc users查看表结构

  • 删除password字段

注意:删除字段一定要小心,删除字段及其对应的队列数据都没了

alter table users drop password;

在这里插入图片描述

此时使用desc uesers; 查看表结构可以看见表结构没有password

修改表名users为employee

alter table users rename to employee;    to可以省略

在这里插入图片描述
此时可以用show tables;进行查看表

  • 将employee 里name列修改为xingming
  • 如果要并且修改字段大小或者字段属类型也可以重新定义
  • 字段类型不可以省略不写
alter table employee change name xingming varchar(60);

此时可以进行 desc employee; 查看表结构发现字段名字或者或者字段类型

3.5删除表

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] …

示例

drop table employee;

此时用show tables; 查看表是否删除

感谢观看,谢谢.

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-28 12:27:20  更:2021-10-28 12:29:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:01:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码