![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 86
Lansonli
CSDN大数据领域博客专家,InfoQ写作社区2022年度影响力作者、华为云社区2022年度十佳博主、华为云享专家、阿里云专家博主、腾讯云开发者社区2022年度最佳作者、腾云先锋(TDP)核心成员、51CTO专家博主,全网二十万多粉丝,知名互联网公司大数据高级开发工程师
展开
-
MySQL数据库基础(十五):PyMySQL使用介绍
如果使用之前学习的MySQL客户端来完成这个操作,那么这个工作量无疑是巨大的,我们可以通过使用程序代码的方式去连接MySQL数据库,然后对MySQL数据库进行增删改查的方式,实现100000条数据的插入,像这样使用代码的方式操作数据库就称为数据库编程。注:PyMySQL是基于事务进行操作的,所以在数据库增删改操作时,必须通过conn.commit() 方法将事务操作提交到数据库,如果事务操作没有成功,则可以通过conn.rollback()进行回滚(返回到数据的原始状态)。原创 2024-02-25 18:08:23 · 1989 阅读 · 2 评论 -
MySQL数据库基础(十四):E-R模型及表间关系
对于大型公司开发项目,我们需要根据产品经理的设计,先使用建模工具, 如:power designer,db desinger等这些软件来画出实体-关系模型(E-R模型)1、E-R模型由 实体、属性、实体之间的关系构成,主要用来描述数据库中表之间的关系和表结构。📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨。2、开发流程是先画出E-R模型,然后根据三范式设计数据库中的表结。E-R模型就是描述数据库存储数据的结构模型。E-R模型即实体-关系模型。原创 2024-02-25 17:51:23 · 998 阅读 · 0 评论 -
MySQL数据库基础(十三):关系型数据库三范式介绍
设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。原创 2024-02-23 23:17:58 · 1339 阅读 · 1 评论 -
MySQL数据库基础(十二):子查询(三步走)
在一个 select 语句中,嵌入了另外一个 select 语句, 那么被嵌入的 select 语句称之为子查询语句,外部那个select语句则称为主查询。原创 2024-02-20 18:45:00 · 975 阅读 · 3 评论 -
MySQL数据库基础(十一):多表查询
连接查询可以实现多个表的查询,当查询的字段数据来自不同的表就可以使用连接查询来完成。原创 2024-02-20 13:46:01 · 1228 阅读 · 0 评论 -
MySQL数据库基础(十):DQL数据查询语言
之前我们做的查询都是横向查询,它们都是根据条件一行一行的进行判断,而使用聚合函数查询是纵向查询,它是对一列的值进行计算,然后返回一个单一的值;分页查询在项目开发中常见,由于数据量很大,显示屏长度有限,因此对数据需要采取分页显示方式。例如数据共有30条,每页显示5条,第一页显示1-5条,第二页显示6-10条。having作用和where类似都是过滤数据的,但having是过滤分组数据的,只能用于group by。聚合查询函数:count(),sum(),max(),min(),avg()。原创 2024-02-19 22:31:41 · 1235 阅读 · 2 评论 -
MySQL数据库基础(九):SQL约束
遵循原则:创建主键约束:创建表时,在字段描述处,声明指定字段为主键删除主键约束:如需撤销 PRIMARY KEY 约束,请使用下面的 SQL我们通常希望在每次插入新记录时,数据库自动生成字段的值。我们可以在表中使用 auto_increment(自动增长列)关键字,自动增长列类型必须是整型,自动增长列必须为键(一般是主键)。下列 SQL 语句把 "Persons" 表中的 "Id" 列定义为 auto_increment 主键向persons添加数据时,可以不为Id字段设置值,也可以设置成nul原创 2024-02-19 00:06:38 · 1470 阅读 · 3 评论 -
MySQL数据库基础(八):DML数据操作语言
特别注意:在SQL语句中,除了数字,其他类型的值,都需要使用引号引起来,否则插入时会报错。案例:修改username='马鹏'这条记录,将其性别更新为男,家庭住址更新为广东省深圳市。案例:今年是2020年,假设到了2021年,现在存储的学员年龄都差1岁,整体进行一次更新。特别说明:如果在更新数据时,不指定更新条件,则其会把这个数据表的所有记录全部更新一遍。删除大量记录速度慢,只删除数据,主键自增序列不清零。原创 2024-02-18 16:49:08 · 729 阅读 · 0 评论 -
MySQL数据库基础(七):DDL数据表操作
特别注意:创建数据表必须有一个前提,首先要明确选择某一个数据库。创建 => create数据表 => table创建 + 数据表 = create table 数据表名称案例:创建一个admin管理员表,拥有3个字段(编号、用户名称、用户密码)use在MySQL中的含义代表选择,use 数据库名称相当于选择指定的数据库。而且use比较特殊,其选择结束后,其尾部可以不加分号;但是强烈建议所有的SQL语句都要加分号,养成一个好习惯。原创 2024-02-18 09:59:14 · 1106 阅读 · 2 评论 -
MySQL数据库基础(六):DDL数据库操作
如博客系统中的用户管理功能,就需要一个user数据表、博客中的文章就需要一个article数据表、博客中的评论就需要一个message数据表。一个MySQL DBMS可以同时存放多个数据库,理论上一个项目就对应一个数据库。编写SQL语句是一个比较细致工作,不建议大家直接在终端中输入SQL语句,可以先把你要写的SQL语句写入一个记事本中,然后拷贝执行。创建 + 数据库 = create database 数据库名称(字母+数字+下划线组成,以字母开头,不能出现中文以及特殊字符)原创 2024-02-17 09:59:52 · 1004 阅读 · 2 评论 -
MySQL数据库基础(五):SQL语言讲解
结构化查询语言(Structured Query Language)简称SQL,是关系型数据库管理系统都需要遵循的规范,是数据库认识的语句。不同的数据库生产厂商都支持SQL语句,但都有特有内容。原创 2024-02-17 00:05:30 · 1271 阅读 · 0 评论 -
MySQL数据库基础(四):图形化开发工具DataGrip
DataGrip是JetBrains公司推出的管理数据库的产品,功能非常强大,可以兼容各种数据库,另外,JetBrains公司还有一款知名的IDE开发工具IDEA,用户体验非常不错。原创 2024-02-16 15:50:57 · 1416 阅读 · 0 评论 -
MySQL数据库基础(三):Linux系统下的MySQL安装与使用
① MySQL的特点:免费,支持大型数据库,标准的SQL语言形式,跨平台。② 本文使用的版本是。原创 2024-02-16 06:30:00 · 970 阅读 · 3 评论 -
MySQL数据库基础(二):MySQL数据库介绍
MySQL是一个关系型数据库管理系统,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件,它是由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品,MySQL 是最流行的关系型数据库管理系统中的一个。选择新建,将刚才的赋值的mysql文件的地址粘贴到文本框中,点击确定,完成环境变量配置。下载完成后打开安装包,稍等片刻后,选择开发者默认的安装方式,点击下一步即可。原创 2024-02-15 14:02:52 · 1485 阅读 · 2 评论 -
MySQL数据库基础(一):数据库概述
数据库就是存储数据的仓库,其本质是一个文件系统,按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。随着互联网的高速发展,大量的数据在不断的产生,伴随而来的是如何高效安全的存储数据和处理数据,而这一问题成为了信息时代的一个非常大的问题,而使用数据库可以高效的有条理的储存数据。可以结构化存储大量的数据;可以有效的保持数据的一致性、完整性;读写效率极高。二、数据库分类数据库又分为关系型数据库和非关系型数据库。原创 2024-02-15 10:21:57 · 1140 阅读 · 0 评论 -
数据库自动备份
1.首先写一个备份ssh文件在你要的目录下创建一个备份文件夹,和一个备份文件。2.编辑这个备份文件,写一个ssh语句#!/bin/bashDATE=$(date +%Y%m%d)mysqldump -uroot -proot coscia_00 > /home/backup/cosica_00-$DATE.sql3.给这个ssh文件执行权限(必须设置)chmod u+x /home/back...原创 2018-05-24 00:24:30 · 635 阅读 · 1 评论 -
腾讯云数据库
1.领取或购买到腾讯云关系型数据库,根据你需要的数据库类型进行新建就会进入购买页2.刚购买的数据库都要进行初始化操作,就是点按钮选择你要的类型3.对数据库进行管理,点击管理4.忘记密码的可以在账号管理进行数据库密码重置,然后就是将我们需要的数据库文件导入,在数据库管理中新增数据库,将SQL文件导入,根据文件大小和网络上传速度等待时间有长短5.完成后可以通过登录按钮使用phpmyadmin查看数据内...原创 2018-04-23 22:32:42 · 7357 阅读 · 3 评论 -
商城数据库表设计介绍
前言 一个商城系统,需要有,用户表,商品表,商品分类表,购物车表,订单表,订单明细表,支付信息表,以及物流信息表。 使用PowerDesigner对数据表以及他们之间的关系进行了粗略的设计得出了如下E-R图: 1.用户表2. 商品表3.商品类别表4.购物车表5. 订单表6.订单明细表7.支付信息表8.收货信息表SQL实例SET FOREIGN_KEY_CHECKS=0;-- --------...原创 2020-07-18 23:21:48 · 27520 阅读 · 11 评论 -
怎么查找执行比较慢的sql语句
一、MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句1,slow_query_log这个参数设置为ON,可以捕获执行时间超过一定数值的SQL语句。2,long_query_time当SQL语句执行时间超过此数值时,就会被记录到日志中,建议设置为1或者更短。3,slow_query_log_file记录日志的文件名。4,log_queries_not_using_ind...转载 2018-09-14 15:32:20 · 3816 阅读 · 0 评论 -
电商商品模块数据设计与关系图
最近在忙商城的项目的底层数据表的搭建,以下是我通过对ECshop和TPshop的数据表结构分析后,做出兼容我们公司的表设计。仅供参考,有其他建议欢迎留言,希望能与大家共同学习。1. 商品分类的逻辑表名:cs_goods_category 备注: 商品分类表字段名数据类型默认值允许非空是否递增备注idint(11) 否是 cat_namevarchar(90) 否 商品分类名称parent_idsm...原创 2018-04-23 22:24:03 · 10544 阅读 · 3 评论 -
MySQL数据库+命令大全+常用操作
格式:mysql -h主机地址 -u用户名 -p用户密码1. 例:连接到本机上的MYSQL首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>2. 例:连接到远程主机上的MYSQL假设远程主机的IP为:127.0.0.1,用户名为root,密码为1234。则键入以下命令:mysql -h127.原创 2020-09-01 23:33:49 · 7683 阅读 · 5 评论 -
MySql数据库Update批量更新与批量更新多条记录的不同值实现方法
批量更新mysql更新语句很简单,更新一条数据的某个字段,一般这样写:UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value';如果更新同一字段为同一个值,mysql也很简单,修改下where即可:UPDATE mytable SET myfield = 'value' WHERE other_...原创 2020-01-11 00:13:36 · 5193 阅读 · 1 评论 -
Mysql悲观锁以及乐观锁案例说明
悲观锁介绍:悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。使用场景举例:以MySQL InnoDB为例...原创 2020-01-07 23:59:34 · 936 阅读 · 1 评论 -
centos7 安装 Mysql 5.7.28,详细完整教程
1.下载 MySQL yum包wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm2.安装MySQL源rpm -Uvh mysql57-community-release-el7-10.noarch.rpm3.安装MySQL服务端,需要等待一些时间yum install -y...原创 2019-12-15 23:48:59 · 3583 阅读 · 0 评论 -
Mysql中的递归层次查询(父子查询,无限极查询)
前言:最近面试的时候遇到公司要求只能用SQL来查询无限极的数据,不能用PHP程序做递归查询,现在分享方法。下面给出一个function来完成的方法下面是sql脚本,想要运行的直接赋值粘贴进数据库即可。-- ---------------------------- -- Table structure for `treenodes` -- ---------------------...原创 2019-11-17 01:21:23 · 4361 阅读 · 0 评论 -
Mysql锁专题:InnoDB锁概述
一 概述InnoDB与MyISAM有两处不同:1)InnoDB支持事务;2)默认采用行级锁(也可以支持表级锁)对于更新操作(UPDATE、INSERT、DELETE),InnoDB会自动给涉及到的数据集加排他锁(X);对于普通的SELECT语句,InnoDB不加任何锁(所以即使有一个线程的写操作在占用锁,不影响其他线程的读,但是如果某个线程试图加共享锁则不行)。InnoDB的行锁模...原创 2019-10-20 15:51:33 · 779 阅读 · 0 评论 -
MySQL的四种事务隔离级别
本文实验的测试环境:Windows 10+cmd+MySQL5.6.36+InnoDB一、事务的基本要素(ACID) 1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。 2、一...原创 2019-10-20 15:17:04 · 517 阅读 · 1 评论 -
MySQL开启远程连接权限
1、登陆mysql数据库 mysql -u root -p 查看user表mysql>use mysql;Database changedmysql>select host,user,password from user;+--------------+------+----------------------------------------...原创 2019-04-07 23:17:27 · 807 阅读 · 0 评论 -
浅谈MySQL中utf8和utf8mb4的区别
一、什么是UTF8MB4?我们在使用PhpMyAdmin管理面板时,可以在首页看到名为“Server connection collation”(服务器连接排序规则)的选项,用来选择所使用的字符集。对于我们常用的UTF8,却有utf8和utf8mb4两种,这是为什么呢?原来,MySQL在5.5.3版本之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的...转载 2018-05-07 22:18:04 · 1905 阅读 · 0 评论 -
MySQL慢查询分析工具pt-query-digest详解
一、简介pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdump抓取的MySQL协议数据来进行分析。可以把分析结果输出到文件中,分析过程是先对查询语句的条件进行参数化,然后对参数化以后的查询进行分组统计,统计出各查询的执行时间、次数、占比等,可以借助分析结果找出...转载 2018-05-13 15:40:32 · 33354 阅读 · 9 评论 -
腾讯云数据库
1.领取或购买到腾讯云关系型数据库,根据你需要的数据库类型进行新建就会进入购买页2.刚购买的数据库都要进行初始化操作,就是点按钮选择你要的类型3.对数据库进行管理,点击管理4.忘记密码的可以在账号管理进行数据库密码重置,然后就是将我们需要的数据库文件导入,在数据库管理中新增数据库,将SQL文件导入,根据文件大小和网络上传速度等待时间有长短5.完成后可以通过登录按钮使用phpmyadmin查看数据内...原创 2018-04-17 23:28:39 · 1843 阅读 · 0 评论