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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介:

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
相关文章
|
2天前
|
SQL 关系型数据库 MySQL
MySQL服务器性能调优的顶级策略14
【7月更文挑战第14天】MySQL服务器性能调优的顶级策略
23 12
|
2天前
|
SQL DataWorks Java
DataWorks操作报错合集之在与某个数据库服务器建立或保持通信连接时遇到报错,该如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
14天前
|
网络协议 网络架构
【网络编程入门】TCP与UDP通信实战:从零构建服务器与客户端对话(附简易源码,新手友好!)
在了解他们之前我们首先要知道网络模型,它分为两种,一种是OSI,一种是TCP/IP,当然他们的模型图是不同的,如下
|
22天前
|
NoSQL 关系型数据库 MySQL
linux服务器重启php,nginx,redis,mysql命令
linux服务器重启php,nginx,redis,mysql命令
30 1
|
3天前
|
DataWorks 关系型数据库 MySQL
DataWorks操作报错合集之从OceanBase(OB)数据库调度数据到MySQL数据库时遇到连接报错,该怎么办
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
机房构建---服务器必须搭配显示器,接口使用VGA的线,必备基础设施之显示器
机房构建---服务器必须搭配显示器,接口使用VGA的线,必备基础设施之显示器
|
14天前
|
关系型数据库 MySQL Java
软件开发2003 -Can·t to MySQL server on ‘xxxxxx‘(10038),宝塔初始化安装mysql,远程链接MySql注意事项,开始时服务器是没有放开端口的,宝塔也都开
软件开发2003 -Can·t to MySQL server on ‘xxxxxx‘(10038),宝塔初始化安装mysql,远程链接MySql注意事项,开始时服务器是没有放开端口的,宝塔也都开
|
15天前
|
SQL 关系型数据库 MySQL
Navicate,数据库,Mysql,改表,4月29日Finished - Unsuccessfully,导出数据不妨,右键,备份一下Mysql数据库的内容,你想导入和导出数据不如,用查询的方式去做
Navicate,数据库,Mysql,改表,4月29日Finished - Unsuccessfully,导出数据不妨,右键,备份一下Mysql数据库的内容,你想导入和导出数据不如,用查询的方式去做
|
17天前
|
SQL Oracle 关系型数据库
第1章 MySQL概述
第1章 MySQL概述
9 0
|
18天前
|
SQL 存储 关系型数据库
MySQL数据库—初识数据库 | DDL语句 | DML语句
MySQL数据库—初识数据库 | DDL语句 | DML语句