随笔分类 -  【数据库系列】

1 2 下一页

OceanBase系列---【oracle模式的存在即更新,不存在即新增的merge into用法】
摘要:一、需求 写一个存在即更新,不存在即新增的sql。表里没有id,是一个联合主键,所以为了防止并发下的安全问题,使用sql的merge into来实现。 二、分析 MERGE INTO: 这是 Oracle 模式下处理 Upsert(更新或插入)最标准、最高效的语法。 USING (...): 这里构 阅读全文

posted @ 2025-12-10 16:04 少年攻城狮 阅读(12) 评论(0) 推荐(0)

OceanBase系列---【如何拆分PMAX分区?】
摘要:因为OceanBase的oracle模式不支持自动创建分区,所以为了节省时间,我们往往会手动预先创建很多分区,然而,随着时间的流逝,手动创建的总会有用完的时候。为了防止数据插入报错,我们会新增一个PMAX分区,来防止数据插入错误,把大于手动创建的最大分区的数据都存入了PMAX分区中。因此,本文就是为 阅读全文

posted @ 2025-10-30 21:54 少年攻城狮 阅读(11) 评论(0) 推荐(0)

OceanBase系列---【如何把一个表改造成分区表?】
摘要:1.先备份原表数据(为了不影响原表使用,如果暂时没人用,可以省略此步骤) create table source_tmp as select * from source; 2.改造原表ddl,创建分区表source_partition 具体参考:https://www.cnblogs.com/huj 阅读全文

posted @ 2025-10-30 21:33 少年攻城狮 阅读(11) 评论(0) 推荐(0)

OceanBase系列---【oceanbase的oracle模式新增分区表】
摘要:TIPS 分区选择建议 按天分区: 适用于数据量极大(每天千万级以上)、需要频繁删除历史数据的场景 按月分区: 适用于数据量中等(每月百万到千万级)、最常用的分区方式(推荐) 按年分区: 适用于数据量较小、数据保留周期长、查询跨度大的场景 1.创建分区表 oceanbase在我写这个笔记的时候,还不 阅读全文

posted @ 2025-10-30 20:57 少年攻城狮 阅读(36) 评论(0) 推荐(0)

Neo4j系列---【Linux离线安装neo4j】
摘要:Linux离线安装neo4j 1.官方安装文档 地址:https://neo4j.com/docs/operations-manual/current/installation/linux/tarball/ 2.如果浏览器无法访问 修改neo4j.conf,开放所有ip访问 # 允许所有IP地址访问 阅读全文

posted @ 2025-07-17 00:31 少年攻城狮 阅读(237) 评论(0) 推荐(0)

Oracle系列---【如何修改Oracle字符集?】
摘要:1. 字符集修改的一般步骤: su - oracle # 切换到 oracle 用户 sqlplus /as sysdba # 以 sysdba 身份登录到数据库 shutdown immediate; # 停止数据库 startup mount; # 启动数据库到 MOUNT 状态,数据库在这个状 阅读全文

posted @ 2025-01-21 23:21 少年攻城狮 阅读(309) 评论(0) 推荐(0)

Oracle系列---【解决oracle误设置VARCHAR2长度,错把字节当字符】
摘要:1.查看当前 Oracle 数据库的字符集 SELECT * FROM v$nls_parameters t WHERE t.PARAMETER = 'NLS_CHARACTERSET'; 执行结果: PARAMETER VALUE NLS_CHARACTERSET AL32UTF8 如果oracl 阅读全文

posted @ 2025-01-21 22:58 少年攻城狮 阅读(164) 评论(0) 推荐(0)

Oracle系列---【Smallfile模式的表空间如何确定单个数据文件的最大大小?】
摘要:如果你的数据版本是oracle12c以上的版本,直接跳到最下面执行5.1和5.4即可。 在 Oracle 数据库中,MAXSIZE 参数用于限制数据文件的最大大小,确保表空间不会无限制增长。MAXSIZE 的最大值主要受到以下因素的影响: 1. 操作系统的文件系统限制 不同的操作系统和文件系统有不同 阅读全文

posted @ 2025-01-15 15:11 少年攻城狮 阅读(139) 评论(0) 推荐(0)

Oracle系列---【ORA-01017用户名密码无效】
摘要:1.问题 项目启动时,报:ORA-01017用户名密码不对的错误,但是没有报具体哪个库错误,因为我是多数据源的项目。 2.解决方案 2.1定位到连接数据报错的用户和库名 select * from dba_audit_session where ACTION_NAME='LOGON' AND RET 阅读全文

posted @ 2025-01-15 11:10 少年攻城狮 阅读(524) 评论(0) 推荐(0)

Oracle系列---【Oracle中密码的策略如何设置】
摘要:在 Oracle 数据库中,profile 是一个与用户关联的配置集合,用于控制用户账户的资源使用情况和密码策略。例如,profile 可以定义用户的密码过期时间、账户锁定策略、并发会话数限制等。 简单来说,profile 是一组规则的集合,这些规则可以应用到一个或多个数据库用户,从而限制或管理他们 阅读全文

posted @ 2025-01-15 10:39 少年攻城狮 阅读(629) 评论(0) 推荐(0)

Oracle系列---【关闭归档日志】
摘要:1.问题 数据库突然不能用了,排查后发现磁盘满了,清完归档日志之后,释放掉一半的磁盘空间,过一夜很快又满了,测试环境,为了节省资源决定关闭归档日志。 2.查看是否开启归档日志 #查看归档日志是否开启,使用sqlplus查询 SQL> SELECT LOG_MODE FROM V$DATABASE; 阅读全文

posted @ 2024-11-28 10:50 少年攻城狮 阅读(635) 评论(0) 推荐(0)

Oracle系列---【查询日期差大于300秒的数据】
摘要:1.问题 交易日期和消费日期差值太大,需要查出差值大于5分钟的数据,oracle中没找到现成的函数,找了好久,记录一下。 2.sql #方案一(推荐) #两个字段类型都是TIMESTAMP SELECT * FROM transactions WHERE txn_time - create_tm > 阅读全文

posted @ 2024-11-13 16:50 少年攻城狮 阅读(50) 评论(0) 推荐(0)

Oracle系列---【磁盘有空间,但是报unable to extend index ... by 128 in tablespace COM_ASC】
摘要:如果你想快速解决这个问题,请参考:https://www.cnblogs.com/hujunwei/p/18673075 一、Oracle 表空间满了的问题可能出现在以下几个方面 1.数据文件达到最大大小限制:即使启用了自动扩展,数据文件可能已经达到了其最大大小设置。 2.缺乏可用磁盘空间:尽管您提 阅读全文

posted @ 2024-08-08 11:51 少年攻城狮 阅读(460) 评论(0) 推荐(0)

Oracle系列---【如何修改oracle密码?优雅切换密码】
摘要:1.问题描述 接审计要求,已上线的数据库的密码属于弱口令,需要更改成严格的,但是服务又不能停机,这种情况下,只能在原有用户名上新增代理用户,这里不能用新建用户的方案,因为用户间不能共用schema,所以只能用新增代理用户的方案。切换到代理用户的过程中发现,"ORA-28000: The accoun 阅读全文

posted @ 2024-07-08 22:34 少年攻城狮 阅读(98) 评论(0) 推荐(0)

mysql系列---【insert into select批量插入查询结果】
摘要:1.背景 在一次上线中,新功能是新加入的用户弹出答题窗口,系统中现有的用户不让弹窗,这时候就需要把系统中现有的用户id保存到第一次登录的记录表中。 两张表:first_login: id, create_time, user_id user: id, isCooperation, name 2.sq 阅读全文

posted @ 2021-01-26 16:22 少年攻城狮 阅读(1795) 评论(0) 推荐(0)

mysql系列---【如何利用存储过程,造10万条测试数据?】
摘要:背景:测试的时候,没有数据,自己一个一个造,很是麻烦,再搞个java接口,似乎也不太方便,这里就可以尝试一下下面这种做法,利用mysql的存储过程来造数据。 示例代码: delimiter $$ drop procedure if exists generate; CREATE DEFINER=`r 阅读全文

posted @ 2020-10-30 00:09 少年攻城狮 阅读(315) 评论(0) 推荐(0)

我爱java系列---【mysql数据库如何开启binlog日志】
摘要:进入docker中的mysql docker exec -it b3a852194e9c /bin/bash #b3a852194e9c为容器iddocker exec -it -u root mysql /bin/bash #以管理员身份登陆容器(推荐,避免修改配置文件时权限不足) 1.查看当前m 阅读全文

posted @ 2020-05-21 15:11 少年攻城狮 阅读(1309) 评论(0) 推荐(0)

开发中遇到的问题---【使用mybatis时 有一个sql查询不到结果 日志也显示查询为o 但是从日志中取出执行的sql到数据库客户端手动执行,可以查到数据】
摘要:问题:使用mybatis时 有一个sql查询不到结果 日志也显示查询为o 但是从日志中取出执行的sql到数据库客户端手动执行,可以查到数据; 原因:MyBatis看到 #{}会认为你在给sql中的变量赋值,就像JDBC编程中给问号赋值一样(自动在前后加单引号)也就是说,他把你传入的字符串并没有当做多 阅读全文

posted @ 2020-03-18 03:44 少年攻城狮 阅读(1418) 评论(0) 推荐(0)

Mysql系列---【mysql格式化日期】
摘要:场景一:数据库是dateTime类型,mybatis字段和属性映射时是TIMSTAMP,实体类中的属性类型是String类型传输,这时候如何顺利的从sql中顺利查询出来并映射道实体类的属性中呢? 解决方案: select DATE_FORMAT(c.CREATE_TIME, '%H:%i') cre 阅读全文

posted @ 2020-02-12 17:52 少年攻城狮 阅读(349) 评论(0) 推荐(0)

1 2 下一页

导航