
SQL
文章平均质量分 94
SQL学习和分享
会很甜
渐行渐远渐无书,水阔鱼沉何处问
展开
-
MySQL锁机制
锁是计算机协调多个进程或线程并发访问某一资源的机制,那为何要加入锁机制呢?因为在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共享的资源。当并发事务同时访问一个共享的资源时,有可能导致数据不一致、数据无效等问题。例如我们在数据库的读现象中介绍过,在并发访问情况下,可能会出现脏读、不可重复读和幻读等读现象。原创 2023-10-15 14:42:33 · 435 阅读 · 0 评论 -
MySql优化
对于运筹学基础的学习,需要广泛的数学基础,如微积分学、线性代数、概率论与数理统计等等。识记:能知道有关名次、概念、和知识的含义,并能正确认识和表述。领会:在识记的基础上,能全面把握基本概念、基本理论和基本方法,能掌握有关概念、理论和方法的区别与联系。应用:在领会的基础上,能运用基本概念、基本理论、基本方法分析和解决实际问题。...原创 2019-03-31 22:44:34 · 282 阅读 · 7 评论 -
分库分表---理论
上面虽然已经把商品库分成3个库,但是随着业务的增加一个订单库也出现QPS过高,数据库响应速度来不及,一般mysql单机也就1000左右的QPS,如果超过1000就要考虑分库。而切分之后,数据可能分布在不同的节点上,此时Join带来的问题就比较麻烦了,考虑到性能,尽量避免使用Join查询。,修改代码,所有涉及到分库分表的表的增、删、改的代码,都要对新库进行增删改。同时,再有一个数据抽取服务,不断地从老库抽数据,往新库写,把一个表的多个字段分别拆成多个表,一般按字段的冷热拆分,热字段一个表,冷字段一个表。原创 2023-09-12 11:51:53 · 3273 阅读 · 0 评论 -
MySQL主从复制与读写分离
配置好了MySql的主从复制结构后,我们希望实现读写分离,把读操作分散到从服务器中,并且对多个从服务器能实现负载均衡。读写分离和负载均衡是MySql集群的基础需求,MaxScale就可以帮着我们方便的实现这些功能。MaxScale是MySql的兄弟公司MariaDB开发的,现在已经发展得非常成熟。MaxScale是插件式结构,允许用户开发适合自己的插件。原创 2023-09-04 13:49:30 · 266 阅读 · 0 评论 -
MySql介绍 安装 配置全网最全
了解Mysql数据库Microsoft发布的SQL Server产品是一个典型的关系型数据库管理系统。功能强大 操作简便 可靠的安全性二.数据库概念 数据库:数据库就是数据存放的地方,是需要长期存放在计算机内有组织并且可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度,较高的数据独立性易扩展性,可以为不同的用户共享使用。常见的数据库模型...原创 2019-01-10 14:30:57 · 8793 阅读 · 9 评论 -
MySql 存储过程
所有这些操作,相对于服务端来说,最终体现就是与数据库的交互,可想而知,如果业务足够复杂,关联的表足够多,需要与数据库进行IO次数就越多,本篇所要分享的存储过程就能很好的解决以上问题(服务器的性能、数据库的IO交互次数)。游标,提供了一种灵活的操作方式,让我们能够对结果集中的每一条记录进行定位,并对指向的记录中的数据进行操作的数据结构。游标的使用,主要包括游标的声明(declare)、打开(open)、使用(fetch)和关闭(close)以上过程的作用说明:计算输入的工资和需要查询几条员工信息。原创 2019-01-10 16:04:45 · 417 阅读 · 4 评论 -
MySql 语句
在MySQL中,数据库称为database,数据表称为table,一个数据库软件中有多个数据库(databases),每个数据库中又可以有多个数据表(tables),最终,数据是存储在数据表中。以上语句中,primary key表示主键,意思是这个字段作为记录的唯一标识,就像每个人的身份证号,都是唯一确定的。执行该命令会显示表stuinfo的基本结构,例如有哪些字段,每个字段是什么类型,谁是主键等。注意:如果设置了主键,插入记录的主键字段是不能重复的,也就是不能插入重复的记录。原创 2019-01-10 17:35:31 · 189 阅读 · 6 评论 -
SQL 左连接、右链接、内连接
左连接(LEFT JOIN)是指将左边的表的所有行与右边的表进行连接,并返回匹配的结果。如果右边的表中没有与左边表匹配的行,则返回 NULL 值。左连接常用于获取左表中的所有数据以及与之相关的右表数据。是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。下边以A表和B表为例子,A、B之间的左连接条件为:ano=bno;原创 2019-01-10 21:31:35 · 13400 阅读 · 7 评论 -
MySql集群主从复制
对于上述两大类集群架构都涉及到了集群中的多节点数据同步问题,涉及到同步问题需要了解mysql数据复制的类型和数据同步原理。这两种方式没有哪一种是完美的,MySQL可以在这两种复制模式间动态的切换,默认情况下都是使用的基于语句的复制方式,但是如果发现语句无法被正确的复制,就切换到行的复制模式。原创 2019-01-11 11:12:31 · 171 阅读 · 5 评论 -
MySql 触发器
触发器是一个命名的 MySQL 对象,它在表中发生事件时激活。触发器是与特定表关联的特定类型的存储过程。 NEW触发器允许使用和访问表中的值以进行比较OLD。修饰符的可用性取决于您使用的触发事件: 在尝试插入数据时检查或修改值使NEW.修饰符可用。这是因为表格已更新为新内容。相反,OLD.插入语句的值不存在,因为事先没有信息存在于其位置。 更新表格行时,两个修饰符都可用。有OLD.我们想更新为数据的NEW.原创 2019-01-11 11:35:27 · 366 阅读 · 5 评论 -
Transact-SQL
①标量值函数:返回单个数据值的函数。CREATE FUNCTION 函数名@参数名 [AS] 参数类型 [=默认值] [READONLY], -- 若指定默认值,则不指定参数的值也能执行函数[@参数名 [AS] 参数类型 [=默认值] [READONLY], -- 若指定READONLY,则函数中不可修改或更新参数@参数名 [AS] 参数类型 [=默认值] [READONLY]RETURNS 返回值类型[WITH ENCRYPTION] -- 此选项表示函数定义的文本被加密,不能查看。原创 2019-01-11 10:51:43 · 578 阅读 · 8 评论 -
什么是sql注入?如何避免?
SQL注入(SQLi)是一种注入攻击,,可以执行恶意SQL语句。它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制Web应用程序后面的数据库服务器。攻击者可以使用SQL注入漏洞绕过应用程序安全措施;可以绕过网页或Web应用程序的身份验证和授权,并检索整个SQL数据库的内容;还可以使用SQL注入来添加,修改和删除数据库中的记录。SQL注入漏洞可能会影响使用SQL数据库(如MySQL,Oracle,SQL Server或其他)的任何网站或Web应用程序。原创 2021-05-30 19:57:34 · 7168 阅读 · 8 评论