oracle 数据库
最天使
希望能够在CSDN里学习更多的技术知识,结识更多志同道合的学者,共同进步
展开
-
Oracle 数据库迁移策略
应用场景:将一台服务器上的数据库迁移到另一台服务器上1)查询服务器版本,数据库版本及大小,用来选择安装文件版本,规划存储(原则环境越相似越好,迁移过程越简单)2)根据DB大小选择适当的备份恢复策略1.估算出系统上线以后数据库的大小,用来规划存储选择备份策略一般规划存储是DB的大小的2-3倍,如果DB 是100G,那么给备份的空间最好是200G以上。SELECT ROU......原创 2022-08-16 10:08:12 · 1080 阅读 · 0 评论 -
oracle 省市表创建sql
CREATE TABLE PROVINCES ( ID NUMBER, PROVINCEID varchar2(20), PROVINCE varchar2(50))BEGINinsert into provinces(id,provinceid,province) values(1,'110000','北京市'); insert into provin...原创 2019-03-19 14:44:56 · 3333 阅读 · 6 评论 -
Oracle数据库可视化管理工具SQL Developer的使用
官方下载网址:https://www.oracle.com/technetwork/cn/developer-tools/sql-developer/downloads/index.html我的oracle数据库安装在远程服务器上,只能通过VPN,VNC工具进行连接,用的Mac OS 可以通过命令行工具的ssh命令进行连接,你可以先用Mac OS 终端ssh命令进行连接准备好以下信息:1)...原创 2019-03-22 14:43:45 · 4146 阅读 · 0 评论 -
ORACLE 表空间管理系列1:常用表空间查询SQL
--1、查看表空间的名称及大小SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size_MBFROM dba_tablespaces t, dba_data_files dWHERE t.tablespace_name = d.tablespace_nameGROUP BY t.tablespac...转载 2019-03-22 16:05:49 · 171 阅读 · 0 评论 -
Oracle 表空间管理2:处理表空间满的问题
1.查询表空间使用情况,找到空间紧张的表空间SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_G...转载 2019-03-22 17:04:29 · 238 阅读 · 0 评论 -
ORACLE 去掉字符串中的单引号
SELECT REPLACE(ID_NUM,'''',''),REPLACE(BANK_ID,'''','') FROM CRP_PER_INFO_BK此处为一坑,在oracle中需要用四个单引号原创 2019-03-31 17:10:42 · 7976 阅读 · 0 评论 -
Oracle exp导出数据库表,表结构,表数据不全问题
原因:在oracle11g有个特征,如果某个表从来没有被使用过,则数据库系统不会给这个表分配段,只在数据字典中保存其结构。这样,从来没有被使用过的表使用exp命令就不会被导出。说明:设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment。该值设置后只对后面新增的表产生作用,对之前建立的空表不起作用。解决办法:1.解锁统计...转载 2019-04-02 15:04:23 · 2734 阅读 · 0 评论 -
Oracle 数据库导入导出过程中遇到的坑
1. IMP-00002: failed to open teas_ivf_exp.dmp for read源数据库原因:exp file参数文件名称区分大小写解决:看是否文件名书写有问题2.EXP-00091: Exporting questionable statistics.原因:引起此问题的原因是数据库字符集和操作系统的NLS_LANG不一致导致解决:设置操作系统字符...原创 2019-04-03 15:16:09 · 579 阅读 · 0 评论 -
Oracle 数据库全库备份脚本
#!/bin/bash# 按照日期为备份文件名取值export NLS_LANG=AMERICAN_AMERICA.AL32UTF8a=$(date +%Y%m%d)#b=$(date -d '7 days ago' +%Y%m%d)echo $a#echo $blocation='/home/oracle/backup'find $location -mtime +30 -t...原创 2019-04-03 15:21:29 · 1337 阅读 · 0 评论 -
oracle中的instr()函数
instr()查找指定字符串起始位置函数1.instr(查找字符串,目标字符串):select instr('helloworld','l') from dual --返回结果:3 默认第一次出现“l”的位置select instr('helloworld','lo') from dual --返回结果:4 即:在“lo”中,“l”开始出现的位置select ...原创 2019-02-26 11:57:47 · 310 阅读 · 0 评论 -
sqlplus无法使用命令退格删除和历史记录的解决方法(使用rlwrap)
1. 系统:RedHat Enterprise Linux 5.11rlwrap 下载地址::https://pan.baidu.com/s/1WafT5-gwXbEtrM4LLOJK6w 密码:ga4z2.上传文件到 Linux服务器/tmp 目录下3、 解压缩安装[root@localhosttmp]# tar -xvf rlwrap-0.37.tar[root@...转载 2018-09-26 17:17:46 · 569 阅读 · 0 评论 -
Oracle 实用案例1:DECODE行转列
1.原始数据医院编号 病人编号 访视编号 检查项目 检查结果 结果判定 S-01 P001 V01 白细胞 2.79 是 S-01 P001 V01 血小板 1.41 否 S-01 P001 V02 白细胞 3.11 是 S-01 P002 V02...原创 2018-08-28 11:56:49 · 337 阅读 · 0 评论 -
Oracle随机抽取数据
1.SAMPLE 如果表T1有数据块B1,B2 B1有记录R1,R2,R3,R4,R5 B2有记录R6,R7,R8,R9,R10 如果使用如下SQL选择50%的数据 select * from t1 sample block(50) 则返回的结果可能是数据块B1的记录 R1,R2,R3,R4,R5 也可能是数据块B2的原创 2017-12-21 17:22:05 · 3025 阅读 · 0 评论 -
ORACLE输出结果到文件
spool abc.txt; select * fromdab_jobs;spooloff;原创 2017-12-27 18:55:45 · 5020 阅读 · 1 评论 -
解决sqlplus中输错命令时的删除、光标键不能使用问题
sqlplus中打错sql命令时不能回撤,不能修改,只能回车重新写,非常麻烦。看到 一位朋友写了,我也记录一下。出错如下:BYS@bys1>aa ^H^H^[[D^[[D^[[C^[[C^[[A^[[A第一种方法:使用rlwrap+SQLPLUS方法1.安装rlwrap软件安装rlwrap之前需要readline。readline可以直接在安装光转载 2017-12-27 19:03:00 · 1774 阅读 · 0 评论 -
BETWEEN AND的边界值问题
1.操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。2.BETWEEN ... AND 相当于 >= AND原创 2018-01-05 10:30:04 · 26041 阅读 · 0 评论 -
ORACLE数据库已知当前日期求上月5号和当月5号
SELECT ADD_MONTHS(TRUNC( TO_DATE(SYSDATE, 'YYYY-MM-DD'),'MM' ),-1)+4,TRUNC( TO_DATE(SYSDATE, 'YYYY-MM-DD'),'MM' )+4 FROM DUAL原创 2018-01-05 10:41:19 · 899 阅读 · 0 评论 -
ORACLE定时任务举例
1.编写自己的存储过程create or replace procedure update_job_sal isv_sql varchar2(1000);beginv_sql:='truncate table t';execute immediate v_sql;insert into t (username,sal) values('aa',100);upd原创 2018-01-05 14:21:34 · 365 阅读 · 0 评论 -
Oracle sqlplus 常用格式化输出命令
show linesize 查看当前设置的sqlplus输出的最大行宽set linesize 设置sqlplus输出的最大行宽column 修改显示字段的长度或名称例1:将列col_name(字符型)显示最大宽度调整为15个字符column col_name format ...原创 2018-07-25 15:11:12 · 5895 阅读 · 0 评论 -
Linux定时任务Crontab命令详解
linux 系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令。一、crond简介crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与wi转载 2017-08-21 16:10:57 · 229 阅读 · 0 评论