数据库
文章平均质量分 78
LOVE_DDZ
记录一下平常遇到的问题,提供参考。
展开
-
SpringBoot使用Mybatis-plus给Oracle进行分页
这里是版本较低的SpringBoot。SpringBoot版本比较高的。原创 2022-12-09 23:02:39 · 1736 阅读 · 0 评论 -
OrecleSQL语句和PL
Orecle/PL1. Oracle创建表空间2. 创建用户3. 序列4. 同义词5. 表分区1. 范围分区2. 间隔分区6. IF控制语句7. IF - ELSIF - ELSE 语句8. 异常9. 游标1. Oracle创建表空间-- 创建表空间create tablespace ts1datafile 'c:/ddz.dbf' size 10M, 'c:/xq.dbf' size 10M--修改数据文件的大小alter database datafile 'c:/ddz.dbf' res原创 2020-09-22 09:13:18 · 132 阅读 · 0 评论 -
MySQL实现新增或更新操作 去重操作
总结起来,MySQL会首先根据主键进行判断,然后再根据其他唯一索引或唯一约束进行判断。如果存在冲突,则执行更新操作;如果不存在冲突,则执行插入操作。请确保在实际使用中,除了主键之外的字段具有唯一约束,以确保数据的唯一性。根据您的具体需求,可以修改示例中的表名、字段名和条件来适应您的场景。原创 2023-05-11 09:37:07 · 1646 阅读 · 0 评论 -
Incorrect string value: ‘\xF0\x9F\x98\xAD“,...‘ for column ‘commentContent‘ at row 1
解决MySQL 数据库字符集编号错误 Incorrect string value: ‘\xF0\x9F\x98\xAD",…’ for column ‘commentContent’ at row 1修改mysql的配置文件,windows下的为my.ini(linux下的为my.cnf),修改的内容都一样[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]charact原创 2022-01-20 17:10:57 · 216 阅读 · 0 评论 -
Spring Boot基于sharding-jdbc、Hibernate Shards实现MySQL分库分表
本文介绍了三种实现MySQL分库分表的方案:sharding-jdbc、Hibernate Shards和TDDL,并针对每种方案给出了详细的实现步骤和示例代码。这三种方案各有优缺点,选择哪种方案需要根据具体业务需求和技术架构进行综合考虑。无论选择哪种方案,都需要进行合理的分片策略设计和性能优化,以确保分库分表方案的可靠性和高效性。原创 2023-03-16 18:05:42 · 768 阅读 · 0 评论 -
MySQL 视图、函数和存储过程
MySQL 是一种流行的关系型数据库管理系统,其具有强大的功能和灵活性,使其成为了许多企业和个人喜爱的数据库选择。在 MySQL 中,视图、函数和存储过程是常见的数据库对象,它们都有助于提高数据的处理效率和可重用性原创 2023-04-25 22:30:03 · 528 阅读 · 0 评论 -
MySql基本的简单sql语句
SQL语句分类必须记住删除语句DELETE FROM 表名 WHERE 条件插入语句简单的插入语句INSERT INTO 表名 (字段列表) VALUES (值列表)查询出的数据插入到已存在的表中查询出的数据插入到不存在的表中更新语句UPDATE 表名 SET 字段名=值,... WHERE 条件查询语句SELECT 字段列表|*FROM 表名1INNER|LEFT|RIGHT JOIN 表名2 ON 表1和表2的关系...省略语句WHERE 查询条件GROUP原创 2020-09-21 21:10:49 · 121 阅读 · 0 评论 -
MySQL查看和修改最大连接数
在高并发的环境下,MySQL 的最大连接数变得尤为重要。本文将介绍如何查看当前的最大连接数,并详细说明每个相关变量的含义。如果连接被标记为交互式,则会使用此值来确定在未活动一段时间后关闭连接之前的等待时间。需要注意的是,增加最大连接数会增加服务器资源的消耗,包括内存和处理器。因此,在调整最大连接数时,应谨慎评估服务器的硬件配置和负载情况。:MySQL 服务器允许等待连接的请求队列的最大长度。如果客户端尝试建立连接的次数超过此限制,则服务器将拒绝进一步的连接请求。在上面的示例中,最大连接数被设置为 100。原创 2023-06-15 18:05:44 · 7677 阅读 · 0 评论 -
CentOS7服务器Yum安装MariaDB 或 Docker 安装MariaDB
MariaDBCentOS7服务器Yum安装MariaDBDocker 安装MariaDBCentOS7服务器Yum安装MariaDB1. 搜索mariadbyum search mariadb-server2. yum安装yum install -y mariadb-server.x86_643. 编辑 my.cnf 配置文件vim /etc/my.cnf4. 设置MariaDB字符集为utf-8/etc/my.cnf 文件#在 [mysqld] 标签下添加init_co原创 2022-03-14 16:28:48 · 2467 阅读 · 0 评论 -
SpringBoot 使用Druid实现数据库连接池并结合AOP实现多数据源
Spring Boot是一个快速开发Spring应用程序的框架,而Druid是一个高性能的数据库连接池,可以提高数据库访问的效率。在Spring Boot中使用Druid作为数据库连接池,可以更好地管理和优化数据库连接,提高应用程序的性能。原创 2023-03-24 17:51:43 · 2251 阅读 · 0 评论 -
SpringBoot批量插入数据到数据库 JdbcTemplate、MyBatis、JPA
在 Spring Boot 中,我们可以使用 JdbcTemplate、MyBatis 和 Spring Data JPA 等多种方式来批量插入数据到数据库。这些方式各有优缺点,开发者可以根据实际情况选择最适合自己的方式。原创 2023-03-30 11:58:11 · 2588 阅读 · 0 评论 -
MySQL、PostgreSQL、Oracle、SQL Server数据库触发器实现同步数据
数据库触发器是一种在数据库中设置的程序,当满足某些特定条件时,它会自动执行。触发器通常与数据表的操作(例如插入、更新和删除)相关联,它们可以帮助保证数据的完整性和一致性。在本篇博客中,我将介绍各种数据库中触发器的使用和构建。原创 2023-04-16 21:27:57 · 1420 阅读 · 0 评论 -
Linux结合Docker 整合 Mycat集群和Mysql 主从集群
Mycat+MysqlMySQL 主从模式搭建主库1. 创建目录并赋最高权2. 创建配置文件3. 创建容器并挂载数据轴4. 启动5. 进入MySQL 工具1. 创建同步账户以及授权2. 查看状态和配置项搭建从库1. 创建目录并赋最高权2. 创建配置文件3. 创建容器并挂载数据轴4. 启动5. 登入MySQL 工具1.设置master相关信息2. 启动同步3. 现在在主库上创建库 ,从库上会自动同步MyCat1. 安装 jdk1. 解压tar包在这里插入代码片配置jdk环境2. 安装MyCat1. 解压tar原创 2020-11-27 09:02:53 · 273 阅读 · 0 评论 -
SpringBoot 基于TDDL实现MySQL分库分表
本文介绍了如何使用TDDL实现MySQL分库分表,并通过一个简单的示例演示了如何配置TDDL、创建数据表和实体类、编写DAO层代码以及测试分库分表。TDDL是一款功能强大的数据库中间件,支持丰富的分片规则和路由策略,可以提高数据库的扩展能力和性能。如果您的应用程序需要进行数据库水平扩展,TDDL可能是一个不错的选择。不过,在实际应用中,您需要根据具体的业务需求和实际情况选择适合的数据库中间件,并进行合理的配置和优化。原创 2023-03-16 18:16:15 · 1732 阅读 · 1 评论 -
Java Php Mysql 递归查询 查询当前节点下的所有子节点 包含当前节点返回列表
它遍历列表中的每个节点,如果节点的父ID等于指定的父ID,则将该节点作为当前节点,递归查询该节点的子节点,并将子节点作为嵌套的子树添加到当前节点。请注意将示例代码中的tree_table和id和parent_id字段名称替换为你实际使用的表和字段名称,以及将数据库连接的URL、用户名和密码替换为你的实际连接信息。将查询中的[当前节点的ID]替换为你要查询的节点的ID。请注意将查询中的[当前节点的ID]替换为你要查询的节点的ID。请注意将查询中的[当前节点的ID]替换为你要查询的节点的ID。原创 2023-03-14 20:06:51 · 802 阅读 · 0 评论 -
Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column
1055 - Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'wsq.m.chat_room_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by原创 2022-03-29 12:27:39 · 3180 阅读 · 0 评论 -
MYSQL SQL语句优化技术技巧
MySQL是一种流行的关系型数据库管理系统,它提供了各种各样的SQL语句优化技术,下面是一些常见的优化技巧:原创 2023-04-14 18:00:57 · 633 阅读 · 0 评论 -
PHPStudy hosts文件可能不存在或被阻止打开,同步hosts失败
以上是解决同步hosts失败的问题的几个步骤。如果以上步骤仍然无法解决问题,可以尝试重启计算机或卸载并重新安装PHPStudy。原创 2023-04-28 11:54:42 · 1785 阅读 · 1 评论 -
CentOS7服务器Yum安装MySQL5.7 或 Docker 安装MySQL5.7
CentOS7默认没有MySQL的Yum源,执行命令yum search mysql搜索出来的是mariadb,不符合我们的需求。下载yum源安装包:执行命令安装源二、安装好yum源就可以一键安装更新MySQL了执行命令安装MySQL5.7,启动之前需要更新一下秘钥。执行安装安装过程中可能会遇到下面异常,这个是因为MySQL GPG 密钥已过期。这个时候需要更新一下秘钥,网上有很多种更新的方法,仅供参考。注意:如果需要MySQL不区分大小写或自定义端口号需要修改my.原创 2021-09-14 22:01:40 · 838 阅读 · 0 评论 -
数据库SQL语句优化技巧
当今世界,数据量不断增长,数据库的使用变得越来越普遍。虽然数据库提供了很多强大的功能,但是它们也需要被优化以确保它们的性能得到最大化。在本篇博客中,我们将探讨SQL语句优化的几种技巧,这些技巧可以帮助您提高数据库性能并减少查询的响应时间。原创 2023-04-14 17:56:04 · 587 阅读 · 1 评论 -
MYSQL报错:Caused by: java.sql.SQLSyntaxErrorException: Specified key was too long;
是MySQL存储引擎是MyISAM时MVSQL对索引的最大长度有限制。对于lnnODB引警,索的最大长度为767字节,对于MUSAM引警,索引的最大长度为1000 字节。需要注意的是,修改MySQL配置可能会对性能产生一定的影响,因此在进行修改之前请评估系统的负载情况和性能需求。原创 2023-12-19 11:01:51 · 334 阅读 · 0 评论 -
CentOS7 安装 MySQL8 、Docker 安装 MySQL8
按照提示回答问题,选择是否更改密码策略、删除匿名用户、禁止远程 root 登录等。可以通过在命令行中加入 --nogpgcheck 参数来暂时绕过 GPG 检查。启动时间超过1分钟基本上就是启动成功,然后把端口放开再使用连接工具测试即可。MySQL 安装完成后,初始密码会保存在日志文件中。首先,我们需要添加 MySQL Yum 存储库。MySQL 提供了一个脚本来加强安全性。这里需要注意的是MySQL8的主配置文件目录是。-e:设置环境变量,此处指定root密码。-v:挂载宿主目录到容器目录。原创 2023-11-23 18:04:07 · 1579 阅读 · 0 评论 -
Springboot 使用MyCat实现MySQL分库分表
mycat.rule 配置分片规则,这里将 user 表按照 id 字段进行分库分表,使用 CRC32 算法。Mycat是一个开源的MySQL数据库分布式集群中间件,它可以将一台MySQL数据库分成多个MySQL数据库,并且支持水平和垂直分表。需要注意的是,使用 Mycat 分库分表后,所有操作都将由 Mycat 中转,并发性能会受到影响。MySQL分库分表是将大型数据库按照一定的规则进行分割成多个小型的数据库或者表,以达到减轻单个数据库或表的压力的目的,提高系统的性能和可扩展性。原创 2023-03-16 11:59:11 · 907 阅读 · 0 评论 -
MySQL 5与MySQL 8版本差异及MySQL 8的新功能
未来,随着技术的不断发展和数据库需求的不断增长,我们期待着MySQL继续改进和优化,为各个领域提供更强大、更稳定的数据库解决方案。此外,MySQL 8还引入了“只读”复制(Read-Only Replication),使得下游节点可以只接收写操作的增量日志,从而减轻了主节点的压力。通过比较MySQL5和MySQL8的区别和新功能,我们可以看到MySQL8在性能、安全性和功能方面有了较大的改进和提升。数据压缩:MySQL 8引入了新的数据压缩方法,可以在不损失性能的情况下,大幅度减少存储空间的需求。原创 2023-09-24 00:44:10 · 1758 阅读 · 0 评论 -
【MySQL集群二】使用MyCat和ProxySql代理MySQL集群
Mycat是一个开源的数据库中间件,用于提供高可用性、负载均衡和分片能力。ProxySQL是一个高性能的MySQL代理服务器,用于负载均衡、故障转移和查询过滤。在本篇博客中,我们将讲解如何在CentOS 7.9上安装和配置ProxySQL。原创 2023-09-23 23:08:35 · 837 阅读 · 0 评论 -
【MySQL集群一】CentOS 7上搭建MySQL集群:一主一从、多主多从
MySQL集群允许您创建高可用性的数据库环境,提供故障容忍性和负载均衡。在本博客中,我们将演示如何在两台CentOS 7服务器上搭建MySQL集群,包括一主一从和多主多从的配置。原创 2023-09-17 03:11:16 · 1255 阅读 · 0 评论 -
MySQL中分区与分表的区别
分区与分表是MySQL中处理大规模数据的常用技术手段,它们的目标都是提升系统性能和数据管理效率。然而,分区是将一个大表划分为多个子表,而分表是将一个大表拆分为多个独立的表。在具体的实践中,根据数据的不同属性和需求,选择合适的技术手段对数据进行分割和管理,以满足业务的需求和系统的性能要求。原创 2023-09-06 23:15:36 · 3045 阅读 · 1 评论 -
Sqlserver 在 SELECT 语句中显示来自 GROUP BY 子句中未涉及的列
在SQL Server中,如果您在GROUP BY子句中对某些列进行了分组,但想在SELECT语句中同时显示未涉及到的其他列,您可以使用聚合函数和子查询的方法来实现。这可以通过在GROUP BY子查询中获取需要的聚合值,并在外部查询中选择其他列来完成。通过这种方法,您可以在GROUP BY子句中执行聚合操作,同时在SELECT语句中显示其他未涉及的列。根据您的数据模型和需求,您可以适当地调整查询以满足您的要求。分组,并显示每个客户的最早订单日期以及总订单金额。分组,并在SELECT语句中显示了。原创 2023-09-05 22:20:16 · 402 阅读 · 0 评论 -
在MySQL中查看数据库和表的数据大小
通过使用上述SQL查询,您可以轻松查看MySQL数据库和表的数据大小。这些信息对于数据库管理、性能优化和存储规划非常有帮助。根据您的需求,您可以定期运行这些查询来监控数据库的增长并采取适当的措施。希望这个博客对您有所帮助!原创 2023-09-05 22:16:23 · 3962 阅读 · 0 评论 -
SpringBoot 集成 Canal 实现监听MySQL表数据
Canal 是阿里巴巴开源的基于数据库增量日志解析的数据同步和订阅组件,支持 MySQL、Oracle 等主流数据库。它通过解析数据库的增量日志,将数据库的变更事件转发给下游消费者。原创 2023-09-04 00:15:21 · 2413 阅读 · 3 评论 -
MySQL创建用户时报错“Your password does not satisfy the current policy requirements“
在MySQL中创建用户时遇到"Your password does not satisfy the current policy requirements"错误通常是因为密码不符合数据库的密码策略要求。通过了解密码策略、选择强密码并按照上述步骤操作,您可以成功创建用户并提高数据库的安全性。在创建或更改用户密码时,MySQL会检查密码是否符合当前的密码策略要求。:MySQL的密码策略包括多个参数,这些参数用于定义密码的要求和限制,以提高数据库的安全性。(可选):如果需要,您可以更改MySQL的密码策略级别。原创 2023-09-01 21:38:19 · 2561 阅读 · 0 评论 -
MySQL内置函数使用说明
MySQL 是一个流行的关系型数据库管理系统,它提供了许多内置函数来处理和操作数据。这些函数可以简化数据库查询和操作的过程,提高代码的可读性和效率。以下是一些常见的 MySQL 内置函数及其使用说明和示例。原创 2023-08-02 17:48:42 · 557 阅读 · 0 评论 -
MySQL索引失效原因及解决方案
在使用MySQL数据库时,索引是一种重要的性能优化工具。然而,有时候我们可能会遇到索引失效的情况。本文将介绍几种常见的MySQL索引失效原因以及相应的解决方案,并提供SQL语句的错误示例和正确示例。原创 2023-07-27 09:52:40 · 3182 阅读 · 2 评论 -
MySQL8.0 创建用户、配置用户权限、添加外网访问
现在,root用户应该具有外网访问权限。出于安全原因,建议使用具有更严格访问权限的用户,并限制远程访问仅限于需要的IP地址。通过按照上述步骤,您可以在MySQL 8.0中修改DDL和DML权限。在MySQL 8.0中,root用户的外网访问权限默认是被禁止的。要修改DML权限,您可以按照步骤3的示例将DDL替换为DML。请注意,在实际使用中,根据具体需要,可以进一步细分DDL和DML权限。开头的权限语句,这些权限允许用户进行DDL操作。当您完成对权限的修改后,必须刷新MySQL的权限缓存,以使更改生效。原创 2023-07-05 11:57:50 · 4431 阅读 · 0 评论 -
Huawei Cloud EulerOS 安装 MySQL8.0
出于安全原因,建议使用具有更严格访问权限的用户,并限制远程访问仅限于需要的IP地址。从此,您已成功配置了MySQL的配置文件。请注意,MySQL的配置选项繁多,对不同的配置选项有不同的影响,因此建议在修改配置文件之前先备份原始配置文件,并小心进行适当的配置更改。该命令将会提示您设置root用户的密码、删除匿名用户、禁用root用户的远程登录以及删除测试数据库等。在MySQL 8.0中,root用户的外网访问权限默认是被禁止的。启动MySQL服务后,我们需要进行一些配置以提高安全性并设置root用户的密码。原创 2023-07-05 11:55:14 · 1723 阅读 · 0 评论 -
MySQL中常用查看锁和事务的SQL语句
这条语句将返回一个包含当前正在等待锁的事务的结果集,包括等待锁的事务ID、等待的锁类型和被等待的锁类型等信息。这条语句将显示InnoDB引擎的状态信息,其中包含了当前执行的事务信息、锁等待的信息以及其他相关的统计数据。这条语句将返回一个包含当前正在被锁定的锁的结果集,包括锁的类型、锁定的对象和持有锁的事务ID等信息。这条语句将返回InnoDB引擎的状态信息,其中包含了关于死锁的详细描述,包括涉及的事务和锁的信息。这条语句将返回一个包含所有当前活动事务的结果集,包括事务ID、开始时间、等待锁的状态等信息。原创 2023-07-02 17:58:19 · 5795 阅读 · 0 评论 -
在各数据库中使用 MERGE 实现插入避重 SQL
MERGE是一种在数据库管理系统中用于合并(插入、更新或删除)数据的SQL语句。它允许根据指定的条件将数据从一个表合并到另一个表中,同时避免重复插入或更新数据。MERGE语句通常由以下几个关键字和子句组成:MERGE:关键字指示要执行合并操作。INTO:指定目标表,即要将数据合并到其中的表。USING:指定源表,即提供要合并的数据的表。ON:指定用于匹配目标表和源表的条件。通常,使用一组或多组字段进行条件匹配。原创 2023-07-02 17:04:17 · 1762 阅读 · 0 评论 -
MySQL批量新增或修改时出现异常: Lock wait timeout exceeded; try restarting transaction
在使用MySQL数据库进行批量新增或修改操作时,有时候会遇到"nested exception is java.sql.SQLException: Lock wait timeout exceeded;try restarting transaction"异常。本文将介绍异常出现的原因,并提供解决该异常的方法。原创 2023-06-29 19:15:37 · 7000 阅读 · 0 评论 -
SqlServer批量新增异常:Prepared or callable statement has more than 2000 parameter markers
在开发使用Spring Boot框架的应用程序时,当需要批量新增大量数据到SqlServer数据库时,可能会遇到"java.sql.SQLException: Prepared or callable statement has more than 2000 parameter markers"的异常。这个异常通常意味着准备或可调用的语句中存在超过2000个参数标记。下面将详细介绍异常出现的原因以及如何解决它。原创 2023-06-29 19:10:31 · 540 阅读 · 0 评论 -
nested exception is java.sql.SQLException: connection disabled
当使用Spring Boot连接数据库时,出现"nested exception is java.sql.SQLException: connection disabled"异常可能是由于数据库配置错误、数据库服务器故障、连接池配置问题或数据库访问权限不足引起的。数据库权限问题:数据库用户可能没有足够的权限来连接数据库或执行所需的操作。验证数据库权限:确保数据库用户具有足够的权限来连接数据库和执行所需的操作。检查数据库连接配置:确保数据库连接的URL、用户名和密码正确配置,并与实际数据库的凭据匹配。原创 2023-06-29 19:01:30 · 9054 阅读 · 0 评论