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

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

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
AI 代码解读

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)
AI 代码解读

学号 班级 姓名 年龄 爱好 性别 出生年份
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,如需转载请自行联系原作者



相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
348
分享
相关文章
用 Go 语言轻松构建 MCP 客户端与服务器
本文介绍了如何使用 mcp-go 构建一个完整的 MCP 应用,包括服务端和客户端两部分。 - 服务端支持注册工具(Tool)、资源(Resource)和提示词(Prompt),并可通过 stdio 或 sse 模式对外提供服务; - 客户端通过 stdio 连接服务器,支持初始化、列出服务内容、调用远程工具等操作。
147 3
服务器数据恢复—云服务器上mysql数据库数据恢复案例
某ECS网站服务器,linux操作系统+mysql数据库。mysql数据库采用innodb作为默认存储引擎。 在执行数据库版本更新测试时,操作人员误误将在本来应该在测试库执行的sql脚本在生产库上执行,导致生产库上部分表被truncate,还有部分表中少量数据被delete。
92 25
云数据库:从零到一,构建高可用MySQL集群
在互联网时代,数据成为企业核心资产,传统单机数据库难以满足高并发、高可用需求。云数据库通过弹性扩展、分布式架构等优势解决了这些问题,但也面临数据安全和性能优化挑战。本文介绍了如何从零开始构建高可用MySQL集群,涵盖选择云服务提供商、创建实例、配置高可用架构、数据备份恢复及性能优化等内容,并通过电商平台案例展示了具体应用。
如何解决 MySQL 数据库服务器 CPU 飙升的情况
大家好,我是 V 哥。当 MySQL 数据库服务器 CPU 飙升时,如何快速定位和解决问题至关重要。本文整理了一套实用的排查和优化套路,包括使用系统监控工具、分析慢查询日志、优化 SQL 查询、调整 MySQL 配置参数、优化数据库架构及检查硬件资源等步骤。通过一个电商业务系统的案例,详细展示了从问题发现到解决的全过程,帮助你有效降低 CPU 使用率,提升系统性能。关注 V 哥,掌握更多技术干货。
275 0
使用云数据库RDS和低代码开发平台“魔笔”,高效构建门户网站,完成任务领智能台灯!
使用云数据库RDS和低代码开发平台“魔笔”,高效构建门户网站,完成任务领智能台灯!
【AI应用启航workshop】构建高可用数据库、拥抱AI智能问数
12月25日(周三)14:00-16:30参与线上闭门会,阿里云诚邀您一同开启AI应用实践之旅!
数据库数据恢复—Mysql数据库表记录丢失的数据恢复方案
Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、Mysql数据库表中无任何数据或只有部分数据。 2、客户端无法查询到完整的信息。
数据库数据恢复—MYSQL数据库文件损坏的数据恢复案例
mysql数据库文件ibdata1、MYI、MYD损坏。 故障表现:1、数据库无法进行查询等操作;2、使用mysqlcheck和myisamchk无法修复数据库。
探索后端开发:构建高效API与数据库交互
【10月更文挑战第36天】在数字化时代,后端开发是连接用户界面和数据存储的桥梁。本文深入探讨如何设计高效的API以及如何实现API与数据库之间的无缝交互,确保数据的一致性和高性能。我们将从基础概念出发,逐步深入到实战技巧,为读者提供一个清晰的后端开发路线图。
运用云数据库 Tair 构建缓存为应用提速,完成任务得苹果音响、充电套装等好礼!
本活动将带大家了解云数据库 Tair(兼容 Redis),通过体验构建缓存以提速应用,完成任务,即可领取罗马仕安卓充电套装,限量1000个,先到先得。邀请好友共同参与活动,还可赢取苹果 HomePod mini、小米蓝牙耳机等精美好礼!
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等