ljzloveyj
ljzloveyj
一屋不扫,何以扫天下!
关注数: 55
粉丝数: 41
发帖数: 867
关注贴吧数: 4
【其他】解决win8系统经常在空闲的时候自动非正常关机 【问题】win8系统经常在空闲的时候自动非正常关机,严重影响工作! 【分析】 有可能是因为Windows系统在空闲的时候,开启了自动维护功能, 导致系统占用大量的cpu资源,温度过高,然后出现非正常关机!通过项目中心WHW提供的网络解决办法,特在此分享一下此经验! 【处理】 1 打开控制面板,找到管理工具2 接下来,点击”任务计划程序库—Micordoft—Windows“进入查找相关的设置项目3 按照图片中方框圈中的选项,记得是两个设置项目,然后击右键选择”禁用“,记得将这两个全部禁用
【oracle相关】关于数据闪存恢复的说明 【问题】在沙坪坝某医院因某些原因导致当天早上8点半至9点的时间内费用相关表中的记录丢失,丢失后打算用oracle的归档日志能够全部恢复回来,没有马上用闪存方式恢复费用相关表的一部份数据,当查看归档日志时,归档设置的是以半小时归档备份,因时间长了,所以导致这部份数据无法恢复,只能手工处理! 【分析】oracle的闪回技术可以快速的将数据库恢复到较早的时间点;也可以将表恢复到过去的某个时间点而不必从备份进行还原;闪回删除可还原意外删除的表。 归档日志中设置了归档时间,始终有间隔时间未及时归档备份,当发现某些表中数据丢失后,时间很及时的情况下,发现因数据丢失后,将重要的表数据能用闪存恢复的,尽量及时恢复一部份数据; 【处理】当表中数据误删的恢复办法,开启归档,闪存恢复 1.通过select timestamp_to_scn(to_timestamp('2014-03-13 09:00:00','YYYY-MM-DD HH:MI:SS')) from dual; 查找时间段删除结果:13526973 2.将删除时间转换为scn select * from reportinfo AS OF SCN 13526973 ----wher id='..........' 将删除的reportinfo表中的scn点的数据取出 3.然后可以根据这个数据进行还原操作 create table reporttest as select * from reportinfo where 1=0; insert into reporttest select * from reportinfo AS OF SCN 13526973; --上面两句应该可以合成一句 --create table reporttest as select * from reportinfo AS OF SCN 13526973; 这是reporttest表中就是scn点的reportinfo数据.处理即可
【oracle相关】在win系统中oracle服务丢失的处理方法 【问题】数据库服务器上的所有oracle服务都丢失了——也就是说在服务管理器中没有oracle服务了,如OracleOraDb10g_home1TNSListener、OracleServiceORCL等服务都不见了。 【分析】有可能是杀毒软件把相关oracle服务杀掉了 【处理】 1、从另外一台安装有oracle数据库的机器上(要求oracle的版本一致)的注册表中导出所有的oracle服务。 开始中写入regedit,打开了注册表 依次打开注册表目录HEY_LOCAL_MACHINE --> SYSTEM -->ControlSet001 --> Services,导出(在注册表项上右键选择“导出”)所有oracle的项:OracleDBConsoleorcl、 OracleJobSchedulerORCL、OracleOraDb10g_home1iSQL*Plus、 OracleOraDb10g_home1TNSListener、 OracleServiceORCL,保存为*.reg文件。2、把上一步中导出的注册表文件,导入服务器上。如果注册表的文件名有出入可以修改下,直接用记事本打开 3、修改导出的所有的注册表项,主要修改数据库实例(SID)名和数据库安装路径。 修改下安装路径,按照你oracle安装的目录4、重启数据库服务器。就可以试下,下面的步骤5可以不需要执行 5、启动oracle的Net Manager工具,删除监听程序LISTENER和服务命名中的本机的服务,并重建监听程序和服务命名。 6、启动oracle服务即可。
【oracle相关】 ORA-0131: Insufficient privileges 处理方法 【问题】 远程项目时用PL/SQL对过程procedure(或者函数)调试的时候,报了个错: ORA-0131: Insufficient privileges. Note: Debugging requires the DEBUG CONNECT SESSION system privilege. 【分析】原因是用户权限不够 【处理】sys登录使用以下命令授予权限: GRANT debug any procedure, debug connect session TO username 其实只需要授予debug connect session 就可以了,已经过测试。 另外,如果查询某个角色包含哪些系统权限的话,可以查询: (1)、系统权限: select * from role_sys_privs; ROLE_SYS_PRIVSROLE_SYS_PRIVS:describes system privileges granted to roles. Information is provided only about roles to which the user has access (2)、对象权限: select * from role_tab_privs; ROLE_TAB_PRIVSROLE_TAB_PRIVS:describes table privileges granted to roles. Information is provided only about roles to which the user has access. (3)、角色里都包含哪些角色: select * from role_role_privs ROLE_ROLE_PRIVSROLE_ROLE_PRIVS:describes the roles granted to other roles. Information is provided only about roles to which the user has access.
【oracle相关】SQL生成SQL获取指定用户下相关外键 【问题】 通过数据泵等工具导出数据时,在相关表外键启用的情况下,如果导出数据,将会使用部份不完整的数据导不出来,这样备份时,就会出现导出的数据不完整(ZLCHS中个人文档记录除外) 【分析】 通过SQL生成SQL的方式,将所有外键约束的数据查询出来,然后统一执行 【处理】 1 查询相关表的数据条数; 2 使用下面语句,禁用所有外键约束 select *alter table *||table_name||* disable constraint *||constraint_name||*;* from user_constraints where constraint_type=*R* ; 3 用数据泵导出数据; 4 启用所有停用的外键约束 select *alter table *||table_name||* enable constraint *||constraint_name||*;* from user_constraints where constraint_type=*R* 5 再次查看用备份数据恢复后的表记录,记录相同
【oracle相关】通过数据泵将win系统oracle数据库导入到linux下 【问题】不用rman,只采用oracle中数据泵导入导出工具将win系统下的oracle数据导入到linux系统下 【分析】 当数据不是很大,且对rman恢复不熟悉的朋友,可以用数据泵工具来导入导出,操作相对来说繁琐,但相对简单 【处理】 第一步:在linux创建orcl实例,并手工创建表空间以及用户,如果按用户导出的,需要执行手工创建表空间和用户,如果是按全库导入,可以不执行此步,脚本如下: --创建表空间的脚本: SELECT 'create tablespace ' || a.Name || ' datafile ' || Chr(39) || b.Name || Chr(39) || ' size ' || Bytes || ' autoextend on next 50M maxsize unlimited;' FROM V$tablespace a, V$datafile b WHERE a.Ts# = b.Ts# AND a.Ts# > 4 UNION ALL SELECT 'create temporary tablespace ' || a.Name || ' tempfile ' || Chr(39) || b.Name || Chr(39) || ' size ' || Bytes || 'autoextend on next 50M maxsize unlimited;' FROM V$tablespace a, V$tempfile b WHERE a.Ts# = b.Ts# AND a.Ts# <> 3; --创建用户 ...... 第二步 冷备orcl 并在测试数据库恢复,恢复完成后我们用这个库操作(可以测试所用) 第三步 禁用zlchs所有外键约束,复制并执行下来SQL,将查询出来的数据复制粘贴出来后在执行 select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R' 第四步 导出以下用户数据,这里命名为"user.dmp",以便恢复(当然可以全库导出,不按用户导出): expdp system/zlsoft@orcl1 DIRECTORY=zlchs DUMPFILE=orcl20130111.dmp logfile=orcl20130111.log DATA_OPTIONS=XML_CLOBS schemas= (bhdata,bhmail,zlchs,SLReport,zl_inquiries,bhdata1,cxdata,zlperf,zlchsinsure,hji) 1) 导出全库数据,只导出对象不导数据(此步骤是针对oracle认证的用户所用,导出所有业务用户): expdp 'system/zlsoft' full=y directory=zlchsdir dumpfile=only1215.dmp logfile=metadata_only1215.LOG DATA_OPTIONS=XML_CLOBS content=metadata_only 第五步 将我们之前备份的数据库"user.dmp"压缩,用Xmanager中的FTP工具传数据到linux文件夹下(需要用到linux的一基本命令,需要自己学学),并解压授权 (如果在root用户下解压不起,试着在oracle用户下解压:su - oracle) unzip 你的压缩文件.zip chmod 777 解压出来的文件 第六步 导入数据之前备份的业务数据,这里需要建立数据泵的目录名zlchsdir,将解压的文件放到zlchsdir路径下,在本地计算机(创建服务)和linus下执行下面脚本 impdp system/zlsoft@orcl1 DIRECTORY=zlchsdir DUMPFILE=user.dmp logfile=ZLCHS121511.log full=y 2) 找一台新orcl实例,建立好数据泵后,以下面的语句导入上面的对象文件,主要是生成aqa.sql的脚本文件, impdp 'system/root2012_DCITS@orcl1' full=y directory=zlchsdir dumpfile=only1107.dmp logfile=metadata_only1107.LOG SQLFILE=aqa.sql content=metadata_only 3)找到生成aqa.sql文件,并找到oracle认证中的业务用户脚本和授权脚本 4)连接到linux下用plsql刷上面的用户脚本和授权脚本 第七步 因为个人文档记录较大,需要创建数据链路导 "个人文档记录" -- Create database link create database link ZLCHS250 connect to ZLCHS using '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 32.110.139.12)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )'; --注意事项------查询表空间大小的-- SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(G)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(G)", TO_CHAR(decode(D.TOT_GROOTTE_MB * 100,0,0,ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2)), '990.99') "使用比", F.TOTAL_BYTES "空闲空间(G)", F.MAX_BYTES "最大块(G)" FROM (SELECT TABLESPACE_NAME, ROUND(SUM(BYTES) / (1024 * 1024*1024), 2) TOTAL_BYTES, ROUND(MAX(BYTES) / (1024 * 1024*1024), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F, (SELECT DD.TABLESPACE_NAME, ROUND(SUM(DD.BYTES) / (1024 * 1024*1024), 2) TOT_GROOTTE_MB FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) D WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME ORDER BY 4 DESC --------如果有满了的情况,需要增加表空间 ALTER TABLESPACE ZHLOB ADD DATAFILE 'D:\PATH\ZHLOB2.dbf' SIZE 10M AUTOEXTEND ON NEXT 500M MAXSIZE UNLIMITED; ALTER TABLESPACE ZHLOB ADD DATAFILE 'D:\PATH\ZHLOB3.dbf' SIZE 10M AUTOEXTEND ON NEXT 500M MAXSIZE UNLIMITED; --------通过手工分批次导入个人文档记录,这里的序号是我手工添加了一个字段,并且指定了序号 insert into 个人文档记录 (id, 个人id, 文件类型, 原型id, 原型名, 服务id, 创建人, 创建时间, 文档状态, 修改人, 修改时间, 版次, 打印次数,全文信息, 内容信息) select id, 个人id, 文件类型, 原型id, 原型名, 服务id, 创建人, 创建时间, 文档状态, 修改人, 修改时间, 版次, 打印次数,全文信息, 内容信息 from 个人文档记录 @zlchs250 t where t.序号>0 and t.序号 <=20000 第八步 启用备份前数据库,和恢复后数据所有外键约束 select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R' 至此导入完成,进入详细的功能,数据等测试
【oracle相关】PL/SQL连接64位oracle 11.2G的解决方法之一 【问题】PLSQLdeveloper 无法连接64位oracle 11.2G 【分析】 oci.dll是64位的,32位应用程序PLSQL Developer自然无法加载了,而且PLSQL Developer只支持32位,所以如果非要64位Oracle 【处理】 1、下载”instantclient-basic-win32-11.2.0.1.0”位客户端,下载地址 ”http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Fdownload.csdn.net%2Fdownload%2Fivastest%2F3618722&urlrefer=91d8a9f5ce0bc47faa465386f3173246” 加压后存放,如E:\ProgramFiles\instantclient 2、拷贝Oracle11.2G的msvcr80.dll和tnsnames.ora到解压的instantclient_32位客户端根目录,它们的位置分别是: msvcr80.dll: D:\ProgramFiles\Crystal\product\11.2.0\dbhome_1\BIN\msvcr80.dll tnsnames.ora D:\ProgramFiles\Crystal\product\11.2.0\dbhome_1\NETWORK\ADMIN 3、设置PLSQL Developer中设置Oracle_Home和OCI Library, 如图:4 右击我的电脑,属性,环境变量,新建以下四个变量 path=D:\ProgramFiles\instantclient ORACLE_HOME=D:\ProgramFiles\instantclient TNS_ADMIN=D:\ProgramFiles\instantclient NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 至此设置完成,经实验PLSQL Developer的可以成功连接到Oracle 11.2G 64位
【oracle相关】用数据泵获取ZLCHS中所有oracle认证的登录用户 【问题】: 在实施前期,ZLCHS采用的是BH本地认证用户,现在我们需要将本地用户导入到ORACLE认证的登录方式,如何采用数据泵导入导出的办法获取ZLCHS的登录用户呢? 【分析】: 通过数据泵的方式解决以上问题; 【处理】: 1 在需要导出的数据库上建立数据泵的工作目录 ”zlchsdir” ,用sys 用户登录,执行 Createdirectory zlchsdir As 'd:\zlchs备份' 语句 ,并且在根目录建立” zlchs备份”文件夹; 2 通过以下语句导出全库数据对象(content=metadata_only只导出对象不导数据) expdp 'system/root2012_DCITS@orcl1' full=y directory=zlchsdirdumpfile=only1107.dmp logfile=metadata_only1107.LOG DATA_OPTIONS=XML_CLOBScontent=metadata_only 3 找一台安装有oracle,并建立orcl实例的机子,建立数据泵后,执行以下脚本,将对象导入到此orcl实例中(SQLFILE=aqa.sql是在ZLCHS备份文件中建立aqa文件,此文件中就是导入数据对象的SQL,通过这个文件,我们就可以找到建立相关用户的信息) impdp 'system/root2012_DCITS@orcl1' full=y directory=zlchsdirdumpfile=only1107.dmp logfile=metadata_only1107.LOG SQLFILE=aqa.sqlcontent=metadata_only 4 只需要导入系统用户中creat user 以及GRANT 相关ZLCHS登录用户 就可以停止数据库orcl服务,终止导入,整理后的脚本如附件: 5 最后可以通过PL/SQL执行上面创建好的脚本,就可以成功导入以ORACLE认证的所有ZLCHS登录用户
【其他】win8 下无法安装 net framework3.5 【问题】: 用户在使用BH是报未安装Net Framework3.5的错误,在控制面板的程序中启用或关闭Windows功能,把Net Framework3.5(包括.NET 2.0和3.0)勾选后进行安装,在安装过程中,会出现提示:0x800F081F的错误(无法下载更新),经过查找,发现该问题是win8在安装时未使用镜像安装的原因,在安装.NET Framework 3.5是就会报错。 【处理】: 1、使用Win8自带的资源管理器打开win8的镜像文件,加载到虚拟光驱; 2、然后用命令C:\Windows\system32>dism.exe /online /enable-feature /featurename:NetFX3 /Source:X:\sources\sxs 说明:其中:X:中的X代表WIN8镜像虚拟光驱的盘符 经验价值: 解决WIN8无法安装.net 3.5的问题。
【中联区卫经验分享】-------请各位发帖前查看发贴规则------- 即日起,请各位严格按要求发贴(【主题分类】以及内容中的【问题】,【分析】,【处理】由“全角中括号”标识),不然一律删除,影响自己最终考核情况由发贴本人承担! 主题分类:oracle相关、综合查询、公卫、医疗、妇幼、村医、绩效考核、接口、BH平台、开发技术、安装部署、硬件及网络、其他 !
【中联区卫经验分享】-------请团队负责人申请小吧吧主!!!----- 请各位团队负责人申请小吧吧主或者吧主,根据舒校长发布的<<经验分享发贴规范与管理办法>> 审核各自团队成员的经验分享!
【中联区卫经验分享】从今天开始,请每天签到! 此贴为灌水贴,除了此贴以外,请不要在经验分享中灌水!!!!
这个月的签到,争取下个月满签!!!!1
这个月的签到
我是映山红,我也是朵迷! 她们都是四川妹子,都有天籁之音,都有着低调可爱的性格,都爱她们!!!
启动oracle数据库,出现以下错误应该怎么样解决????????? ORA-00214: ???? 'E:\ORACLE\ORADATA\ORCL\CONTROL01.CTL' ?? 45777 ???'E:\ORACLE\ORADATA\ORCL\CONTROL02.CTL' ?? 45774 ???
1
下一页