MySQL海量数据处理及优化

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 什么是mysqlMySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。

什么是mysql

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。

为什么是mysql
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

mysql的用法

1 默认约束

create table emp (id int default 12)

2 设置自增

create table emp(id int identity(1,1)

3 查看表定义

desc emp

4 修改表明

alter table emp rename emp2

4 修改字段的数据类型

alter table emp rename emp2

4 修改表明

alter table emp2 modify id biginf

5 修改表明

alter table emp rename emp2

6 修改字段名

alter table emp2 change id iid biginf

7 添加字段

alter table emp2 add name navrchar(200) null

8 删除字段

alter table emp2 drop name

9 删除约束

  删除外建约束
    alter table emp2 drop foreign key fk_emp_dept
    
  删除主键约束
     alter table emp2 drop primary key pk_emp_dept

10 删除表

drop table if exists emp1,emp2

11 模版建表


复制表结构

   create table xx like xxx
   
复制表结构和数据解构

   create table xx as select * from xx
   

存储过程

    delimiter // 
CREATE PROCEDURE pro_c ()
BEGIN
    SELECT
        *
    FROM
        USER ;
    END//
delimiter ;

CALL pro_c ();

其中 delimiter // 的意思是将;结束符设置为 // 所以 end 后的//的意思即为结束的意思,最后使用delimiter ; 转化//为;作为结束符
   

你所不值的mysql的大数据用法用法

   DROP TABLE
IF EXISTS bi_user_copy;

CREATE TEMPORARY TABLE bi_cartelo_ali_daily_zp_copy AS SELECT
    *
FROM
    bi_user
LIMIT 0,
 100;

SELECT
    *
FROM
    bi_cartelo_ali_daily_zp_copy;
    
    其中tmpoprary的作用就是创建虚表,通过虚表这个中间表,就可以对大批量数据进行分批处理,最后将处理好的数据进行汇总,有效的解决了从大数据中取出自己想要的数据
    

数据库优化

1 模糊查询

 
 在一个复杂的查询里面最好避免使用LIKE等查询,这样会导致索引无法使用
 

2 索引以下情况

1)避免在索引字段上使用not,<>,!=
  
  (2) 避免在索引上使用IS NULL 和IS NOT NULL
  
 (3)避免在索引列上出现数据转型及函数
 
 (4) 避免建立索引的列中使用空值
 
3 复杂语句

   对于大批量数据尽量使用分页查询,将语句拆分,数据先清洗处理后在查询等
   
4 合理的使用语法糖

  (1)可以使用UNION ALL的地方尽量不要使用UNIONUNION            
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
SQL 监控 关系型数据库
MySQL优化: CPU高 处理脚本 pt-kill脚本
MySQL优化: CPU高 处理脚本 pt-kill脚本
|
21天前
|
SQL 缓存 关系型数据库
MySQL高级篇——关联查询和子查询优化
左外连接:优先右表创建索引,连接字段类型要一致、内连接:驱动表由数据量和索引决定、 join语句原理、子查询优化:拆开查询或优化成连接查询
MySQL高级篇——关联查询和子查询优化
|
21天前
|
算法 关系型数据库 MySQL
MySQL高级篇——排序、分组、分页优化
排序优化建议、案例验证、范围查询时索引字段选择、filesort调优、双路排序和单路排序、分组优化、带排序的深分页优化
MySQL高级篇——排序、分组、分页优化
|
5天前
|
存储 关系型数据库 MySQL
MySQL索引失效及避免策略:优化查询性能的关键
MySQL索引失效及避免策略:优化查询性能的关键
22 3
|
5天前
|
缓存 关系型数据库 MySQL
MySQL数据库优化:提升性能和扩展性的关键技巧
MySQL数据库优化:提升性能和扩展性的关键技巧
14 2
|
5天前
|
监控 关系型数据库 MySQL
如何优化MySQL数据库的索引以提升性能?
如何优化MySQL数据库的索引以提升性能?
14 0
|
5天前
|
监控 关系型数据库 MySQL
深入理解MySQL数据库索引优化
深入理解MySQL数据库索引优化
12 0
|
2月前
|
缓存 关系型数据库 MySQL
在Linux中,如何优化MySQL性能,包括索引优化和查询分析?
在Linux中,如何优化MySQL性能,包括索引优化和查询分析?
|
2月前
|
关系型数据库 MySQL
MySQl优化:使用 jemalloc 分配内存
MySQl优化:使用 jemalloc 分配内存
|
2月前
|
安全 关系型数据库 MySQL
揭秘MySQL海量数据迁移终极秘籍:从逻辑备份到物理复制,解锁大数据迁移的高效与安全之道
【8月更文挑战第2天】MySQL数据量很大的数据库迁移最优方案
290 17
下一篇
无影云桌面