oracle系统

Linux下oracle开机自启动设置

可紊 提交于 2019-12-26 20:27:17
今天在虚拟机安装完oracle数据库重启系统后想进入数据库却发现如下错误: 出现ORA-01034和ORA-27101的原因是多方面的:主要是oracle当前的服务不可用, shared memory realm does not exist ,是因为oracle没有启动或没有正常启动。那么如何在Linux启动时自动启动Oracle监听和实例呢? 首先尝试使用oracle启动数据库的命令dbstart,可是发现又报错如下错误:    ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener    Usage: $ORACLE_HOME/bin/dbstart ORACLE_HOME 错误原因很明确,是dbstart脚本文件中ORACLE_HOME_LISTNER的设置有问题,打开文件( $ORACLE_HOME/bin/dbstart )找到: ORACLE_HOME_LISTNER=$1 ,修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME 即可,同时注意到脚本文件中有如下提示: 所以想开机自动启动数据库还必须修改 /etc/oratab 文件,找到文件中这行( orcl:/opt/oracle/app/product/12.1.0/dbhome_1:N

linux系统oracle服务自启动

巧了我就是萌 提交于 2019-12-26 20:26:44
折腾了我好几个时辰了,终于知道为什么自启动脚本一直无法成功执行,原来都是空格不对惹的祸。具体步骤说明如下: 1.修改dbstart和dbshut脚本 dbstart脚本默认值启动oracle服务,不启动监听服务,如果想在启动oracle服务的同时启动监听,就必须修改该脚本 将ORACLE_HOME_LISTNER值设为$ORACLE_HOME(原来是为$1) dbshut一样的道理,如果想关闭数据库服务的同时关闭监听服务也是将dbshut文件中的ORACLE_HOME_LISTNER值设为$ORACLE_HOME 2.创建oracle自启动脚本 由于修改了dbstart和dbshut脚本,直接用这个脚本就可以实现oracle服务和监听的同时启动或关闭,因此该脚本启动或关闭数据库只要调用dbstart或dbshut脚本就可以了。如果采用默认不做修改,那么必须在该脚本中增加启动监听和关闭监听的语句 su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start" su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop" 如果想开机自动启动oem或关闭自动一起关闭oem,则采用如下语句: su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start

[代码保留]ORA-01033: ORACLE initialization or shutdown in progress

╄→гoц情女王★ 提交于 2019-12-26 16:17:44
*/ /*--> */ 错误编码 :ORA-01033: ORACLE initialization or shutdown in progress 故障描述 :因为移动了数据库文件([NAME].DMP)/日志文件等文件,导致数据库连接出现ORA-01033错误。 故障分析 :[观点来自网络本人并不保证其正确性]网上有一种常见的说法是该类故障通常是由于移动文件而影响了数据库日志文件出现损坏而导致的无法正常进行IO操作而引起的错误。ORACLE将识别为数据库未装载完成而导致出现如上错误。 故障特征 :使用命令行sqlplus或PL/SQL Developer均无法打开数据库。但是可以使用sys用户以sysdba的身份登录系统。 问题解决 : 1.网络上常见的多是针对数据恢复方面的一些解答。在数据恢复方面肯定不能保证100%成功完成。这可能涉及到你对备份机制的一些配置。网上常见的方法请使用Google搜索引擎进行检索。在本例中,网上的大部分方法都无功而返,因此我无法验证网上的方法是否正确。请尝试解决。 2.官方针对ORA-01033的解释基本上是让用户等待一段时间后再次登陆,基于这种判断在于ORA-01033的本质是由于未完全加载而导致的进程忙碌所造成的,这种情况的合理解释确实可以是让用户等待到加载完毕。但是对于此种文件损坏的不可逆的操作,也就代表着永远不可能等到加载完毕的那一刻

查看oracle数据库的连接数以及用户

一世执手 提交于 2019-12-26 16:16:48
1 1 、查询oracle的连接数 2 select count ( * ) from v$session; 3 2 、查询oracle的并发连接数 4 select count ( * ) from v$session where status = ' ACTIVE ' ; 5 3 、查看不同用户的连接数 6 select username, count (username) from v$session where username is not null group by username ; 7 4 、查看所有用户: 8 select * from all_users; 9 5 、查看用户或角色系统权限(直接赋值给用户或角色的系统权限): 10 select * from dba_sys_privs; 11 select * from user_sys_privs; 12 6 、查看角色(只能查看登陆用户拥有的角色)所包含的权限 13 select * from role_sys_privs; 14 7 、查看用户对象权限: 15 select * from dba_tab_privs; 16 select * from all_tab_privs; 17 select * from user_tab_privs; 18 8 、查看所有角色: 19 select *

oracle数据类型详解

走远了吗. 提交于 2019-12-26 12:28:04
数据库中创建表,常见类型总结: 见一个大神总结的很全: 一、数据类型 1.char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1个字节长(一个汉字为2字节) 2.varchar2(n) n=1 to 4000字节 可变长的字符串,具体定义时指明最大长度n,这种数据类型可以放数字、字母以及ASCII码字符集(或者EBCDIC等数据库 系统 接受的字符集标准)中的所有符号。 如果数据长度没有达到最大值n, Oracle 8i会根据数据大小自动调节字段长度, 如果你的数据前后有空格,Oracle 8i会自动将其删去。VARCHAR2是最常用的数据类型。 可做索引的最大长度3209。 3.number(m,n) m=1 to 38n=-84 to 127 可变长的数值列,允许0、正值及负值,m是所有有效数字的位数,n是小数点以后的位数。 如:number(5,2),则这个字段的最大值是99,999,如果数值超出了位数限制就会被截取多余的位数。 如:number(5,2),但在一行数据中的这个字段输入575.316,则真正保存到字段中的数值是575.32。 如:number(3,0),输入575.316,真正保存的数据是575。 4.date 无 从公元前4712年1月1日到公元4712年12月31日的所有合法日期, Oracle

[skil][Oracle] 中的Temporary tablespace的作用

两盒软妹~` 提交于 2019-12-26 09:01:04
[Oracle] 中的Temporary tablespace的作用 临时表空间主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索引、IMP进行数据导入]、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。 当临时表空间不足时,表现为运算速度异常的慢,并且临时表空间迅速增长到最大空间(扩展的极限),并且一般不会自动清理了。 如果临时表空间没有设置为自动扩展,则临时表空间不够时事务执行将会报 ora-01652 无法扩展临时段的错误,当然解决方法也很简单:1、设置临时数据文件自动扩展,或者2、增大临时表空间。 临时表空间的相关操作: 查询默认临时表空间: SQL> select * from database_properties where property_name=’DEFAULT_TEMP_TABLESPACE’; PROPERTY_NAME —————————— PROPERTY_VALUE ——————————————————————————– DESCRIPTION ——————————————————————————– DEFAULT_TEMP_TABLESPACE TEMP Name

使用AWR报告诊断Oracle性能问题

人走茶凉 提交于 2019-12-25 20:15:00
在做单交易负载测试时,有的交易响应时间超出了指标值,在排除完测试环境等可能造成交易超时的原因后,去分析数据库问题。数据库用的是Oracle,对于Oracle数据库整体的性能问题, awr的报告是一个非常有用的诊断工具,于是采用Oracle自带的性能分析工具awr进行监控分析。 生成awr报告 1、 以sysdba登录数据库:sqlplus / as sysdba,如下图所示: 2、 在负载测试执行前后分别取一个快照:exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT,如下图所示: 3、 压力测试执行完后,执行awrrpt命令(@?/rdbms/admin/awrrpt)获取awr报告,并且输入报告类型为HTML(awr报告类型有html和txt两种),如下图所示: 4、 列出awr报告生成的时间段(1表示1天内的),如下图所示: 5、 输入开始和结束的snap id。如果不指定什么时候生成快照,则默认每隔1个小时生成一次。前面输入的时间段为1天,则会从当天0点开始,每隔1个小时生成一个快照,如下图示: 6、 接下来提示输入awr报告的名称,输入完名称之后,点击“file-Log Session”将报告保存到本地,再回车,就会生成相应的报告,如下图所示: 7、 awr报告生成完成后,双击打开即可查看awr报告记录的详细信息。 一、 awr

CentOS7.4静默安装Oracle11g——实验

て烟熏妆下的殇ゞ 提交于 2019-12-25 19:41:15
实验参考地址: https://blog.csdn.net/chrisy521/article/details/80073207 实验注意1: 用系统iso文件搭建本地yum源,可基本完成安装所有的依赖包。package包中没有compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm,需要手动下载,用rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm安装 实验注意2: 以oracle身份操作db_install.rsp之前,使用chown oracle:oinstall /home/oracle/etc/db_install.rsp修改所有者 实验注意3: “/highgo/data/oracle/admin/【sid】/adump(这里的sid要和第8步配置的sid一致) /highgo/data/oracle/flash_recovery_area /highgo/data/oracle/oradata” adump、flash_recovery_area、oradata均为文件夹 实验注意4: “/usr/oracle/oradata” su - oracle登录用户oracle,手动创建该路径。(或者root用户创建,之后用chown -R oracle:oinstall /usr

远程桌面登陆出现CredSSP加密Oracle修正的解决

为君一笑 提交于 2019-12-25 17:09:05
这是2018年3月份微软发布的Win10补丁出现的,解决办法是打开组策略gpedit.msc 策略路径:“计算机配置”->“管理模板”->“系统”->“凭据分配”->加密 Oracle 修正->启用->保护级别:易受***; 以上是不安全的做法,按照文档安全的做法应该在服务器端安装加密 Oracle 修正补丁,本人暂未尝试。有时间测试后再补充。 来源: 51CTO 作者: binac_ok 链接: https://blog.51cto.com/3357617/2116005

oracle11g dataguard物理备库搭建

 ̄綄美尐妖づ 提交于 2019-12-25 09:34:13
Dataguard 环境: 操作系统:Redhat6.4 Primary数据库 : IP 地址:192.168.1.122 数据库SID:ora11g DB_UNIQUE_NAME:ora11g_primary Standby数据库 : IP 地址:192.168.1.123 数据库SID:ora11g DB_UNIQUE_NAME:ora11g_standby (注:oracle数据库版本是11.2.0.1.0) 1.Primary端的配置 (1).检查数据库是否支持 Data Guard( 企业版才支持 ), 是否归档模式, Enable force logging $ sqlplus '/as sysdba' SQL> select * from v$option where parameter = 'Managed Standby'; 确认主库处于归档模式 SQL> archive log list (先检查是否归档模式,不是则修改) startup mount alter database archivelog; alter database open; (2) 将 primary 数据库置为 FORCE LOGGING 模式 SQL> alter database force logging; ( 强制产生日志 ) 如果主库没有密码文件则建立密码文件,从而可以 OS