mysql 数据库服务概述 、 构建MySQL服务器 、 数据库基本管理 、 MySQL数据类型 、

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

08:30------09:00
09:00------12:00
ftp服务器:172.40.50.117 7000
软件 softpackage/mysql
笔记 nsd1710/课程名称
练习 homework

庞丽静 静静老师
第四阶段:
数据库管理 7天 DBA 
安全与监控 6天 IDC监控
集群与存储 5天
+++++++++++++++++++++
数据库管理:
一 搭数据库服务器
二 MySQL数据库服务的基本管理
三 数据管理
四 用户授权与权限撤销
五 数据备份与恢复
六 MySQL主从同步
七 数据读写分离
八 MySQL服务调优
九 部署MySQL集群
++++++++++++++++++++++++++++
day01:
一 搭数据库服务器 : 1 搭建MySQL数据服务器 2 基本使用
二 MySQL数据类型 *
三 修改表结构

一 搭数据库服务器 192.168.4.51
1.1 购买服务器 DELL HP 联想(IBM) 
CPU 内存 磁盘

1.2 安装操作系统 Windows Linux Unix
rhel7
rhel6

1.3 安装提供数据库服务的软件
数据库服务软件有哪些?
软件是否跨平台
软件是否开源 商业软件
软件的来源
软件的封包类型 rpm 源码

1.4 安装mysql软件
1.4.1 卸载系统自带的mariadb
1.4.2 安装MySQL 
1.4.3 启动服务:
服务名称 进程名称 端口号 传输协议 进程所有者 进程所属组 数据库目录

1.5 哪些公司在使用数据库服务
金融机构 购物网站 游戏网站 论坛网站

1.6 网站服务和数据库服务一起使用
LAMP LNMP
+++++++++++++++++++++++++++++++++++++++++++
1.7 把数据存储到数据库服务器上过程
1 连接数据库服务器
2 建库
3 建表
4 插入记录
5 断开连接

  1. 连接数据库服务器:
    使用初始密码登录数据库服务器
    修改密码验证策略和密码长度、修改密码
    使用修改后的密码登录
    修改服务的主配置文件使用密码验证策略永久生效。

*库和表都是以文件的形式存储在数据库库目录下的。

  1. 建库(文件夹) 查看 创建 删除 切换 
    显示当前所在的库
    查看库里已有的表
  • 表必须在库里
    1. 建表(文件)查看 创建 删除
      字段

      姓名 性别 班级 
      jim boy nsd1710 行 记录
      tom boy nsd1710

商品名称 价格 生产厂家 个数 尺寸

create table 库名.表名(
字段名 类型(宽度) 约束条件,
字段名 类型(宽度) 约束条件,
.....
);

create database studb;
create table studb.stuinfo(
name char(15),
sex char(4),
class char(7)
);

查看表结构 desc studb.stuinfo;

  1. 插入记录 : 查看 插入 删除 修改记录 select * from 库.表;

insert into studb.stuinfo values("jim","boy","nsd1710");

update 库.表 set 字段名=值 where 条件;

delete from 库.表;

  1. mysql> quit

+++++++++++++++++++++++++++++++++++++++++++++
SQL语法规则?
sql命令分类型: DDL DML DCL DTL
库名命名规则?
+++++++++++++++++++++++++++++++++++++++++++++
二 MySQL数据类型 *
数值类型:身高 体重 成绩 年龄 工资 unsigned
整数类型:微小整型 小整型 中整型 大整型 极大整型

浮点类型:单精度 双精度

create database db1;
create table db1.t1(level tinyint);
create table db1.t2(level tinyint unsigned);
create table db1.t3(level int unsigned);

整数.小数 总位数
字段名 类型(n,m)
n 总位数
m 小数位位数
pay double(8,2)
pay float(8,2) 
xxxxx.xx
999999.99
-999999.99
create table db1.t4( pay float(5,2), age tinyint unsigned);
insert into db1.t4 values(900.23,27);

mysql>desc mysql.user;

字符类型:姓名 家庭地址 籍贯 公司 部门名称
固长 char (255) *
变长 varchar (65532)
大文本类型 blob text

create table db1.t6(name char(256) , image blob );

create table db1.t7( 
name char(10),
email varchar(30),
pay float(5,2), 
age tinyint unsigned
);

insert into db1.t7 values ("bob","bob@163.com",999.23,27);

char类型与varchar类型的区别

 t1     t2

name name
char(3) varchar(3)
jim jim
ab ab
c c

mysql>desc mysql.user;

数值类型的宽度与字符类型宽度的区别。数值类型的宽度是显示宽度,不能够控制给字段赋值的大小,大小由类型。
create table db1.t9(
name char(3),
pay int(3)
);
insert into db1.t9 values ("lucy",1088);

create table db1.t10 (
id int zerofill,
pay int(3) zerofill
);
insert into db1.t10 values (9,9);
insert into db1.t10 values (27,27);

+++++++++++++++++++++++++++++++++++++++++
日期时间类型: 入职时间 注册时间 约会时间 上课时间 生日
年 year YYYY 2018
日期 date YYYYMMDD 20180117
时间 time HHMMSS 173258
日期时间 datetime / timestamp 
YYYYMMDDHHMMSS
create table db1.t12 (
name char(10),
youstar year,
upclass time,
birthday date,
party datetime
);

insert into db1.t12 values ("bob",1995,083000,20181120, 20180214183000);

使用时间函数获取的时间给字段赋值。
now() year() date() time() day() month()

insert into db1.t12 values ("lucy",year(20191212),083000,date( now() ), now());

使用2位数字给year类型的字段赋值。遵循如下规律:
01~69 20XX 
70~99 19XX
00 0000

create table db1.t13 (
name char(10),
youstar year
);

insert into db1.t13 values("bob",53);
insert into db1.t13 values("tom",88);

datetime 与 timestamp 区别:
create table db1.t14(
meetting datetime,
party timestamp
)

insert into db1.t14 values(now(),now());
insert into db1.t14(meetting) values(20171222092835);
insert into db1.t14(party) values(20161222092835);
++++++++++++++++++++++++++++++++++++++++++
枚举类型: 爱好 性别 专业

  • 字段的只能在指定的范围内选项
    字段名 enmu(值1 ,值2, 值N ) 单选
    字段名 set(值1 ,值2, 值N ) 多选

create table db1.t21(
name char(10),
sex enum("boy","girl"),
likes set("game","music","film","book")
);

insert into db1.t21 values("bob","boy","game,film");
insert into db1.t21 values("tom","man","game,film,it");
insert into db1.t21 values("lucy",2,"game,film,book");

字段约束条件 
作用:限制如何给字段赋值
包括: 是否允许为空null 键值 默认值 额外设置

create table db1.t22(
name char(10) not null,
sex enum("boy","girl") default "boy" ,
age tinyint(2) unsigned not null default 18,
likes set("game","music","film","book") not null default "game,music"
);
desc db1.t22;
insert into t22(name) values("alice");
insert into t22 values("bob","boy",21,"book");

insert into t22(name)values("null","");
insert into t22(name)values(null);
+++++++++++++++++++++++++++++++++++
三 修改表结构
alter table 库.表 执行动作;

添加新字段
add 字段名 类型(宽度);
add 字段名 类型(宽度) 约束条件;
add 字段名 类型(宽度) 约束条件 first;
add 字段名 类型(宽度) 约束条件 after 字段名;
add 字段名 类型(宽度),add 字段名 类型(宽度);
删除已有字段 
drop 字段名;
drop 字段名,drop 字段名;

修改字段类型 (修改的类型与字段存储的数据冲突,不允许修改)
modify 字段名 类型(宽度) 约束条件;

修改字段名
change 源字段名 新字段名 类型(宽度) 约束条件;
修改表名 alter table 源表名 rename 新 表名;
alter table db1.t21 add email varchar(30) default "student@tedu.cn";
alter table db1.t21 add stu_id char(9) first;
alter table db1.t21 add age tinyint(2) unsigned not null default 18 after name;
alter table db1.t21 drop age;
alter table db1.t21 modify stu_id char(9) not null;
alter table db1.t21 modify name varchar(10) not null;
alter table db1.t21 modify likes set('game','music','film','book') after name;
alter table db1.t21 change email mail varchar(30) default "student@tedu.cn";
alter table t21 rename stuinfo;
system ls /var/lib/mysql/db1/stuinfo.*

                     varchar(15)

学号 班级 姓名 年龄 爱好 性别 出生年份
stu_id class name age like sex s_year 
19 book no 1998
game not null
film



     本文转自sweak_h 51CTO博客,原文链接:http://blog.51cto.com/13478354/2064352,如需转载请自行联系原作者



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1天前
|
存储 Oracle 关系型数据库
oracle 数据库 迁移 mysql数据库
将 Oracle 数据库迁移到 MySQL 是一项复杂的任务,因为这两种数据库管理系统具有不同的架构、语法和功能。
10 0
|
10天前
|
Prometheus 监控 Cloud Native
构建高效可靠的Linux服务器监控体系
【4月更文挑战第30天】 在维护企业级Linux服务器的稳定性和性能方面,一个周全的监控体系是至关重要的。本文将探讨如何利用开源工具和实践构建一个高效、灵活且用户友好的监控系统。我们将重点讨论核心组件的选择、配置、报警机制以及数据分析方法,旨在帮助读者打造一个能够实时响应并预防潜在问题的监控环境。
|
10天前
|
弹性计算 关系型数据库 MySQL
|
10天前
|
DataWorks 关系型数据库 MySQL
DataWorks产品使用合集之在DataWorks中配置RDS MySQL数据源的步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
26 0
|
11天前
|
存储 SQL 关系型数据库
MySql入门教程--MySQL数据库基础操作
MySql入门教程--MySQL数据库基础操作
|
11天前
|
存储 安全 网络协议
游戏服务器:构建与运行的艺术
游戏服务器:构建与运行的艺术
23 1
|
11天前
|
存储 关系型数据库 MySQL
RDS for MySQL测试
【4月更文挑战第28天】
|
12天前
|
SQL 关系型数据库 MySQL
【MySQL 探索之旅】初始MySQL数据库
【MySQL 探索之旅】初始MySQL数据库
|
12天前
|
中间件 Go API
Golang深入浅出之-Go语言标准库net/http:构建Web服务器
【4月更文挑战第25天】Go语言的`net/http`包是构建高性能Web服务器的核心,提供创建服务器和发起请求的功能。本文讨论了使用中的常见问题和解决方案,包括:使用第三方路由库改进路由设计、引入中间件处理通用逻辑、设置合适的超时和连接管理以防止资源泄露。通过基础服务器和中间件的代码示例,展示了如何有效运用`net/http`包。掌握这些最佳实践,有助于开发出高效、易维护的Web服务。
27 1
|
8天前
|
关系型数据库 MySQL Linux
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)