10 2018 档案

摘要:SQL> SELECT DECODE(字段,值1,翻译值1,值2,翻译值2......缺省值) FROM 表名; 阅读全文
posted @ 2018-10-14 20:18 epiphanyy 阅读(5) 评论(0) 推荐(0) 编辑
摘要:rank() over(partition by 列名 order by 列名) partition by子句可以省略,返回值为一列排名,其中相同值为排名相同,如两个1则下一个值为3。 dense_rank() over(partition by 列名 order by 列名) dense_rank 阅读全文
posted @ 2018-10-14 16:10 epiphanyy 阅读(29) 评论(0) 推荐(0) 编辑
摘要:查看GLOBAL_NAMES参数是否开启: SQL> SHOW PARAMETER GLOBAL_NAMES; 查看GLOBAL_NAME参数的值: SQL> SELECT * FROM GLOBAL_NAME; 当一个数据库的global_names的值为True时,在此库中创建的DB链接名要与被 阅读全文
posted @ 2018-10-14 15:02 epiphanyy 阅读(40) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/mchdba/article/details/50063693 阅读全文
posted @ 2018-10-14 13:39 epiphanyy 阅读(3) 评论(0) 推荐(0) 编辑
摘要:显示有剩余空间的表空间,每段剩余空间都会有一条记录,如果一个表空间的记录过多说明碎片过多应该整理碎片。 查询碎片数量: SQL> SELECT TABLESPACE_NAME,COUNT(*) FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME; 整理碎片: S 阅读全文
posted @ 2018-10-14 13:16 epiphanyy 阅读(34) 评论(0) 推荐(0) 编辑
摘要:ALTER DATABASE DATAFILE '文件名' RESIZE 大小; 阅读全文
posted @ 2018-10-14 12:33 epiphanyy 阅读(10) 评论(0) 推荐(0) 编辑
摘要:get() 函数返回指定键的值,如果值不在字典中返回默认值: >>> a = {'a':1,'b':2} >>> a.get('a',0) 1 >>> a.get('a') 1 >>> a.get('c',3) 3 >>> a.get('c') >>> setdefault() 函数和get() 方 阅读全文
posted @ 2018-10-13 19:46 epiphanyy 阅读(1) 评论(0) 推荐(0) 编辑
摘要:返回列表或字符串等中字符出现次数的字典: >>> import collections >>> a = 'ddsdsdsdsf' >>> collections.Counter(a) Counter({'d': 5, 's': 4, 'f': 1}) >>> a = [1,1,2,2,0] >>> 阅读全文
posted @ 2018-10-13 19:33 epiphanyy 阅读(1) 评论(0) 推荐(0) 编辑
摘要:Consider all the leaves of a binary tree. From left to right order, the values of those leaves form a leaf value sequence. For example, in the given t 阅读全文
posted @ 2018-10-13 17:38 epiphanyy 阅读(1) 评论(0) 推荐(0) 编辑
摘要:使用此包可以获取对象的创建语句. 获取表的创建语句: SQL>SELECT DBMS_METADATA.GET_DDL('TABLE','表名','用户名') FROM DUAL; 获取索引的创建语句: SQL>SELECT DBMS_METADATA.GET_DDL('INDEX','索引名',' 阅读全文
posted @ 2018-10-13 17:14 epiphanyy 阅读(10) 评论(0) 推荐(0) 编辑
摘要:创建集合(括号中只能有一个参数): >>> s = set('set') >>> s {'s', 't', 'e'} >>> s = set(['set']) >>> s {'set'} 增加一个元素: >>> s {'set'} >>> s.add('python') >>> s {'set', 阅读全文
posted @ 2018-10-13 16:25 epiphanyy 阅读(7) 评论(0) 推荐(0) 编辑
摘要:a = [1,2,3,4,5,6] for i in a : a.remove(i) print(a) 对于上边一段代码一直以来我都认为是将a中的全部元素删除,但结果却让我始料未及: [2, 4, 6] 将第i个元素删除后,下一次迭代是下下个元素,我猜是删除第i个元素后将其后整体前移一个位置,然后下 阅读全文
posted @ 2018-10-13 16:04 epiphanyy 阅读(11) 评论(0) 推荐(0) 编辑
摘要:客户端先从tnsnames.ora文件中获取数据库服务器所在的IP、端口号、使用协议、服务名等信息,然后连接到数据库的监听程序,监听判断用户请求的服务名是否有效,如有效则请求服务器后台进程创建一个服务器进程,并给其分配PGA,之后监听将创建好的服务器程序的端口号和地址发送给用户进程,随后用户进程与监 阅读全文
posted @ 2018-10-13 13:37 epiphanyy 阅读(21) 评论(0) 推荐(0) 编辑
摘要:创建一个磁盘组,此磁盘组设置为正常冗余并且有两个故障组: SQL>CREATE DISKGROUP 磁盘组名 NORMAL REDUNDANCY FAILGROUP 故障组名1 DISKS '路径1' '路径2' FAILGROUP 故障组名2 DISKS '路径3' '路径4'; 向磁盘组中添加磁 阅读全文
posted @ 2018-10-13 13:09 epiphanyy 阅读(55) 评论(0) 推荐(0) 编辑
摘要:以下为结点的定义: class Node(): def __init__(self,value,next = None): self.value = value self.next = next length = 0 #链表的长度,规定只有一个头结点时长度为0 判断链表是否为空: def IsEmp 阅读全文
posted @ 2018-10-12 15:46 epiphanyy 阅读(7) 评论(0) 推荐(0) 编辑
摘要:传递参数的时候,python不允许程序员选择采用传值还是传引用。Python参数传递采用的肯定是“传对象引用”的方式。 实际上,这种方式相当于传值和传引用的一种综合。如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象。 如果函数收到的是一个 阅读全文
posted @ 2018-10-12 14:27 epiphanyy 阅读(2) 评论(0) 推荐(0) 编辑
摘要:NAME = ['Tim','mike'] #全局变量 NAME1 = ['Eric','Jeson'] #全局变量 NAME3 = ['Tom','jane'] #全局变量 def f1(): NAME.append('Eric') #列表的append方法可改变外部全局变量的值 print('函 阅读全文
posted @ 2018-10-11 16:39 epiphanyy 阅读(2) 评论(0) 推荐(0) 编辑
摘要:首先NameNode响应Secondry NameNode的请求,将自身的editslog文件和fsimage文件发送给Secondry NameNode,同时创建一个新的editslog,从此将日志内容记录到新的editslog文件中。Secondry NameNode收到后将fsimage文件加 阅读全文
posted @ 2018-10-10 20:47 epiphanyy 阅读(10) 评论(0) 推荐(0) 编辑
摘要:Hadoop数据块从2.7.2的默认64M变为了2.7.3的默认128M。 可在$HADOOP_HOME/etc/hadoop/hdfs-site.xml文件中修改默认数据块大小: <property> <name>dfs.block.size</name> <value>134217728</va 阅读全文
posted @ 2018-10-10 20:05 epiphanyy 阅读(9) 评论(0) 推荐(0) 编辑
摘要:匹配特定字符串,命令模式下: /字符串 匹配完后按n匹配下一处,N匹配上一处。 跳到某行,命令模式下: 数字 gg 数字 G 阅读全文
posted @ 2018-10-10 19:39 epiphanyy 阅读(1) 评论(0) 推荐(0) 编辑
摘要:find 目录 -name 文件名 但在查找过程中可能出出现无权限访问的情况,这种情况较多时也无法找到目标文件,可使用以下方法将错误去掉: find 目录 -name 文件名 2>/dev/null 查找某个用户的文件: find 目录 -user 用户名 以上文件名可用正则表达式代替。 阅读全文
posted @ 2018-10-10 19:29 epiphanyy 阅读(5) 评论(0) 推荐(0) 编辑
摘要:插入排序过程为首先选出数组前一个,使其有序。 第二步选中前两个,因为前一个已经有序,所以只需将第二个与第一个比较,如2<1则交换位置。 第三步选中前三个,因为前两个已经有序,所以只需将第三个与第二个比较,如3<2则交换位置,之后比较第一个和第二个,如2<1则交换位置,如2>1则说明之前已经有序。 重 阅读全文
posted @ 2018-10-10 17:26 epiphanyy 阅读(24) 评论(0) 推荐(0) 编辑
摘要:堆排序分为两步,建堆和调整堆,这两步可以由一个函数完成,但这个函数每次只能调整一条线(每层选择一次左右)使其符合堆的定义,因此建堆需要从最后一个非叶子节点自底向上调整堆,每次调整堆时需要对比两个孩子与父节点的大小,将最大的孩子与父节点交换(大顶堆),由于大顶堆的每个节点都大于左右子节点,因此就找出了 阅读全文
posted @ 2018-10-08 21:40 epiphanyy 阅读(16) 评论(0) 推荐(0) 编辑
摘要:1.时间窗口 建立一个时间段,在这个时间段内必须可以进行时间点的恢复。 对每个数据文件,必须满足sysdate - 备份时间 >= 恢复窗口。 RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 天数 DAYS; 2.冗余策略 保证至少有n份 阅读全文
posted @ 2018-10-08 15:27 epiphanyy 阅读(10) 评论(0) 推荐(0) 编辑
摘要:有两种不兼容的设置归档日志位置的参数: 1.LOG_ARCHIVE_DEST 如选择此种归档日志位置参数设置,只能有两路归档路径,另一个归档路径由LOG_ARCHIVE_DUPLEX_DEST指定。此种方式只能指定本地的路径。 2.LOG_ARCHIVE_DEST_n 此参数可设置10个归档路径,并 阅读全文
posted @ 2018-10-08 14:10 epiphanyy 阅读(47) 评论(0) 推荐(0) 编辑
摘要:ALTER USER 用户名 ACCOUNT (UN)LOCK; 阅读全文
posted @ 2018-10-08 12:25 epiphanyy 阅读(11) 评论(0) 推荐(0) 编辑
摘要:创建角色: CREATE ROLE 角色名 ; 授予角色权限: GRANT 权限 ON 表名 TO 角色名; 将角色授予角色或用户: GRANT 角色名 TO 角色名/用户名; 阅读全文
posted @ 2018-10-08 12:21 epiphanyy 阅读(10) 评论(0) 推荐(0) 编辑
摘要:ALTER TABLE 表名 MOVE TABLESPACE 表空间名; 移动后需要重建索引: ALTER INDEX 索引名 REBUILD TABLESPACE 表空间名; 查看表上有什么索引: SELECT INDEX_NAME,TABLE_NAME FROM DBA_INDEXES WHER 阅读全文
posted @ 2018-10-08 11:58 epiphanyy 阅读(12) 评论(0) 推荐(0) 编辑
摘要:冒泡排序过程为依次比较相邻的两个数大小,将较大的数放到右边,一趟结束后,最大的数字一定在最右边。 第二趟重复第一趟的过程,但最后一个数一定是最大的,所以最后一个数不用比较。 第三趟重复之前过程,后两个数是有序的,所以不用比较。 Python代码如下: def BubbleSort(lst): for 阅读全文
posted @ 2018-10-07 20:42 epiphanyy 阅读(8) 评论(0) 推荐(0) 编辑
摘要:nomount -> mount -> open nomount: 此阶段主要用于控制文件的还原或重新创建。 数据库启动到nomount状态,此状态下实例已经根据初始化参数文件的内容设置并打开了实例。搜索初始化参数文件的顺序如下: 1.在$ORACLE_HOME/dbs中搜索spfile_sid.o 阅读全文
posted @ 2018-10-07 16:33 epiphanyy 阅读(34) 评论(0) 推荐(0) 编辑
摘要:快速排序过程为 1.选出待排序数列中的第一个数n。 2.把比n小的数放到n的左边,比n大的数放到n的右边。 3.再对左右两个子数列重复1、2。 可以使用挖坑法实现,以下为Python代码: def QuickSort(lst,left,right): if left >= right: return 阅读全文
posted @ 2018-10-07 15:53 epiphanyy 阅读(5) 评论(0) 推荐(0) 编辑
摘要:truncate: 会清空表的内容,直接在数据字典中清除段定义实现的。是DDL语句,不会产生重做日志,删除时不能触发trigger。能针对具有自动递增值的字段,计数重置归零。表中结构、约束、索引等保持不变。 TRUNCATE TABLE 表名; delete: 将指定行数据在数据库缓冲区高速缓存中清 阅读全文
posted @ 2018-10-07 13:12 epiphanyy 阅读(39) 评论(0) 推荐(0) 编辑
摘要:·用户执行commit操作时 ·日志缓冲区三分之一满时 ·DBWn进程写入前 ·每隔三秒 ·数据库正常关闭前 阅读全文
posted @ 2018-10-06 20:36 epiphanyy 阅读(4) 评论(0) 推荐(0) 编辑
摘要:使用带权图的邻接矩阵方法表示图并且不能有负周期。如: g = [ [0,1,float('inf'),1,5], [9,0,3,2,float('inf')], [float('inf'),float('inf'),0,4,float('inf')], [float('inf'),float('in 阅读全文
posted @ 2018-10-06 18:01 epiphanyy 阅读(46) 评论(0) 推荐(0) 编辑
摘要:相关参数: MEMORY_MAX_TARGET:不可动态调整,代表内存(SGA+PGA)的最大值。 SQL>ALTER SYSTEM SET MEMORY_MAX_TARGET = 1000M SCOPE=SPFILE MEMORY_TARGET可被动态调整,但不可超过MEMORY_MAX_TARG 阅读全文
posted @ 2018-10-06 16:14 epiphanyy 阅读(102) 评论(0) 推荐(0) 编辑
摘要:当数据库处于不理想状态时,默认情况下会通过EM发出预警,也可以通过邮件发送给管理员。 要设置电子邮件通知,可在EM上: 1任何 Database Control 页中,单击页眉和页脚区中的“Setup(设置)”链接。 2. 在“Setup(设置)”页中选择“Notification Methods( 阅读全文
posted @ 2018-10-06 14:58 epiphanyy 阅读(43) 评论(0) 推荐(0) 编辑
摘要:OracleDB内置的AWR存放一些快照,这些快照的内容是重要的统计信息和工作量的信息,默认每隔60分钟自动从SGA中获取一次,被易管理性监视器(MMOM)存在磁盘上,默认保存8天。可以在EM中单击“Server(服务器)”选项卡,然后单击“Statistics Management(统计信息管理) 阅读全文
posted @ 2018-10-06 14:12 epiphanyy 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Oracle优化程序可以确定最有效的SQL执行计划,会对SQL语句的执行时间产生重大影响。 SQL语句的执行计划是指执行语句时按顺序执行的一系列操作。 优化程序统计信息包括表、列、索引和系统(CPU、I/O)的统计信息,其中表和索引的统计信息保存在数据字典中。这些统计信息不是实时数据,维护实时的统计 阅读全文
posted @ 2018-10-05 21:15 epiphanyy 阅读(6) 评论(0) 推荐(0) 编辑
摘要:还原数据在用户修改数据内容时创建,保存修改前的值,还原数据至少会保留到事务结束,便于rollback时使用。 还原数据保证读取一致性。 还原数据可用于闪回查询,查找过去某个时间点的数据。用于闪回表,将表恢复到特定时间点。 还原表空间自动进行管理,对于自动扩展的表空间,会将还原保留期优化为略长于 运行 阅读全文
posted @ 2018-10-05 19:29 epiphanyy 阅读(31) 评论(0) 推荐(0) 编辑
摘要:UNION用于合并两个及以上查询结果 SELECT COLUMN1 FROM TABLE1 UNION( ALL) SELECT COLUMN2 FROM TABLE2 其中COLUMN1和COLUMN2的数量、顺序相同,数据类型要相似。 UNION ALL与UNION相似,UNION ALL返回的 阅读全文
posted @ 2018-10-04 14:17 epiphanyy 阅读(4) 评论(0) 推荐(0) 编辑
摘要:SELECT TABLE_NAME,TABLESPACE_NAME FROM DBA_TABLES; 阅读全文
posted @ 2018-10-04 13:47 epiphanyy 阅读(5) 评论(0) 推荐(0) 编辑
摘要:MySQL Data Type Oracle Data Type BIGINT NUMBER(19, 0) BIT RAW BLOB BLOB, RAW CHAR CHAR DATE DATE DATETIME DATE DECIMAL FLOAT (24) DOUBLE FLOAT (24) DO 阅读全文
posted @ 2018-10-04 11:02 epiphanyy 阅读(7) 评论(0) 推荐(0) 编辑
摘要:增删改查中查询不需要锁,即使数据被锁定也能在还原信息中查询出锁定之前的值。其余三项均会使用行级锁,直到用户commit或rollbak。 锁是在指定语句的最低可能级别自动获取的 。增删改获取行级锁而不是块级或表级。修改对象(如移动表)会获取对象级锁,而不是方案锁或数据库锁。最大程度提供事务的并发性。 阅读全文
posted @ 2018-10-03 22:30 epiphanyy 阅读(47) 评论(0) 推荐(0) 编辑
摘要:保留两位小数以GB为单位显示数据文件大小: SELECT ROUND(SUM(BYTES)/1024/1024/1024,2)||'GB' FROM DBA_DATA_FILES; 以MB为单位表空间分组显示数据文件大小: SELECT TABLESPACE_NAME,SUM(BYTES)/1024 阅读全文
posted @ 2018-10-03 21:09 epiphanyy 阅读(101) 评论(0) 推荐(0) 编辑
摘要:置于ARCHIVELOG模式的数据库可以对联机重做日志进行归档,联机重做日志是循环覆盖的,归档可以长时间保存重做日志。 1.查看数据库是否处于ARCHIVRLOG模式 SQL>ARCHIVE LOG LIST; 2.启动或关闭ARCHIVRLOG模式 SQL> SHUTDOWN IMMEDIATE 阅读全文
posted @ 2018-10-03 20:45 epiphanyy 阅读(36) 评论(0) 推荐(0) 编辑
摘要:pctfree:默认为10,指当一个数据块中的数据量达到90%时,就不可以再向这个块中插入数据,剩余的空间留做更新数据时使用。 pctused:一般为40,指当空闲空间量减少到pctfree时,不能插入数据直到当你删除数据到40以下时才可以再次插入数据。 查看表的pctfree和pctused: S 阅读全文
posted @ 2018-10-03 19:42 epiphanyy 阅读(40) 评论(0) 推荐(0) 编辑
摘要:一、逻辑卷(LV)、卷组(VG)、物理卷(PV)关系 逻辑卷(LV)是卷组(VG)的一部分,可以在卷组大小内动态增加,每个卷组可分为多个逻辑卷。 卷组由多个物理卷(PV)组成。每个物理卷是一个块设备(磁盘分区等)。 二、LVM存储 1.准备物理设备 可以是磁盘分区,也可以是整个磁盘、RAID阵列或S 阅读全文
posted @ 2018-10-03 19:03 epiphanyy 阅读(37) 评论(0) 推荐(0) 编辑
摘要:创建前需要准备一个磁盘或分区,可使用fdisk或gdisk创建指定大小的分区,创建方法参考:https://blog.csdn.net/tus00000/article/details/82918013 在创建分区时,分区类型选择Linux Swap。 之后使用以下命令格式化分区: sudo mks 阅读全文
posted @ 2018-10-02 13:53 epiphanyy 阅读(27) 评论(0) 推荐(0) 编辑
摘要:一、两种不同分区方案 1.(主启动记录)MBR分区方案: 此方案最多支持四个主分区,Linux系统中可以通过扩展分区和逻辑分区最多创建15个分区。最大磁盘和分区大小限制为2TB。 2.GUID分区表(GPT)分区方案: 由于MBR的最大大小限制,GPT方案正在取代MBR方案进行分区。但MBR分区的兼 阅读全文
posted @ 2018-10-01 23:10 epiphanyy 阅读(105) 评论(0) 推荐(0) 编辑
摘要:存储数据库诊断数据,例如:跟踪、预警日志、健康状况监视器报告。 ADR(根)基目录位置: 1.DIAGNOSTIC_DEST参数设置 2.如果1未设置,DIAGNOSTIC_DEST= $ORACLE_BASE 3.如果1和 $ORACLE_BASE未设置,DIAGNOSTIC_DEST= $ORA 阅读全文
posted @ 2018-10-01 18:15 epiphanyy 阅读(12) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示