oracle rac异常,重启rac集群,rac scan ip地址错误,rac用户创建,表空间创建和扩容

PLSQL登录

1、查看集群是否正常

一般只有 ora.gsd  OFFLINE 是离线,其余全部处于ONLINE在线状态,才是正常的集群状态。

#正常如下只有gsd是OFFLINE离线状态表示集群正常
[grid@rac1 ~]$ crs_stat -t | grep OFFLINE
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE
ora.rac1.gsd   application    OFFLINE   OFFLINE
ora.rac2.gsd   application    OFFLINE   OFFLINE


#结果错误如下
[grid@rac-1 ~]$ crs_stat -t | grep OFFLINE
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               
ora.rac-1.gsd  application    OFFLINE   OFFLINE               
ora....-2.lsnr application    ONLINE    OFFLINE               
ora.rac-2.gsd  application    OFFLINE   OFFLINE               
ora.rac-2.vip  ora....t1.type ONLINE    OFFLINE

有2个异常

ora....-2.lsnr application    ONLINE    OFFLINE
ora.rac-2.vip  ora....t1.type ONLINE    OFFLINE

由于以前能正常使用,所以重启一下,看能不能解决问题。

要用到 crsctl 命令,使用root用户查询crsctl 命令位置。

[root@rac-1 ~]#  find / -name crsctl
/u01/app/11.2.0/grid/bin/crsctl

一、关闭集群 

使用root用户操作

1、停止has服务

两个节点都要执行

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop has -f
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl stop has -f

2、停止crs服务

两个节点都要执行

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs -f
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs -f

3、停止节点集群服务

两个节点都要执行

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop cluster
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl stop cluster
[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop cluster -all
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl stop cluster -all

二、启动集群 

使用root用户操作

1、启动has服务

两个节点都要执行,启动has如果没有安装补丁,会卡住。

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl start has
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl start has

启动has如果没有安装补丁,会卡住,新开一个窗口,以 root 用户执行以下命令

[root@rac-1 ~]# /bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1
[root@rac-2 ~]# /bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1

2、启动crs服务

两个节点都要执行

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs

启动crs服务有点慢,需要多等一会,使用下面的命令检查是否正常

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl check crs
[root@rac-2 ~]# /u01/app/11.2.0/grid/bin/crsctl check crs

正常如下,如果不行就按上面步骤关闭,多重启重试几次。

CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online

3、启动节点集群服务

等一会,等上面检查结果全部为online
只需要在一个节点执行。

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crsctl start cluster -all
CRS-4690: Oracle Clusterware is already running on 'rac-1'
CRS-4690: Oracle Clusterware is already running on 'rac-2'
CRS-4000: Command Start failed, or completed with errors.

4、检查,只有gsd为OFFLINE 为正常。

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/crs_stat -t | grep OFFLINE
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               
ora.rac-1.gsd  application    OFFLINE   OFFLINE               
ora.rac-2.gsd  application    OFFLINE   OFFLINE   

三、scan IP地址错误

查询  scan ip地址为 192.168.111.333,而实际我的 scan ip地址为 192.168.111.222

[grid@rac-1 ~]$ srvctl config scan
SCAN name: rac-scan, Network: 1/10.102.44.0/255.255.255.0/ens192
SCAN VIP name: scan1, IP: /rac-scan/192.168.111.333	

修改SCAN信息,增加SCAN监听的IP(用root进行修改)

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl modify scan -n rac-scan
[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl modify scan_listener -u

重启SCAN服务和监听(用root进行修改)

[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl start scan
[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl start scan_listener
[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl stop scan_listener
[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl stop scan
[root@rac-1 ~]# /u01/app/11.2.0/grid/bin/srvctl status scan_listener

四、连接数据库

1、查询数据库实例名和服务名

#查询配置文件位置(一般在节点1上)
[root@rac-1 ~]# find / -name dbca.rsp
/u01/software/database/response/dbca.rsp

#根据配置文件查看 服务名GDBNAME 实例名SID
[root@rac-1 ~]# cat /u01/software/database/response/dbca.rsp | grep -v ^.*# | grep -v ^$ |grep -E  "GDBNAME|SID"
GDBNAME = "sqms"
SID = "sqms"

根据上面的查询结果知道,服务名为sqms  ,实例名为 sqms1 和 sqms2

查询访问ip(SCAN IP)

[grid@rac-1 ~]$ srvctl config scan
SCAN name: rac-scan, Network: 1/10.102.44.0/255.255.255.0/ens192
SCAN VIP name: scan1, IP: /rac-scan/192.168.111.222	

查看监听端口

[grid@rac-1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521

2、创建用户

要使用 oracle 用户,不要使用 grid 用户。

[oracle@rac-1 ~]$ sqlplus / as sysdba

##创建一个新用户test和密码test_2024
SQL> create user test identified by test_2024;
##授予DBA权限。
SQL> grant connect,resource,dba to test;

3、使用plsql连接

jdbc连接oracle有2种方式:

jdbc:oracle:thin:@ip:port:SID
jdbc:oracle:thin:@ip:port/Server_Name

我们已经通过第一步知道了,服务名Server_Name为sqms ,实例名SID为 sqms1 和 sqms2

#服务名连接方式
jdbc:oracle:thin:@192.168.111.222:1521/sqms

#实例名连接方式
jdbc:oracle:thin:@192.168.111.222:1521:sqms1
jdbc:oracle:thin:@192.168.111.222:1521:sqms2

五、创建表空间和扩容

1、查询原数据库默认的表空间和默认的临时表空间

-- 查询默认的表空间
SELECT DEFAULT_TABLESPACE FROM USER_USERS;
-- 查询默认的临时表空间
SELECT PROPERTY_VALUE FROM DATABASE_PROPERTIES WHERE PROPERTY_NAME='DEFAULT_TEMP_TABLESPACE';
--查询表空间文件路径
SELECT TABLESPACE_NAME "表空间名", BYTES/1024/1024 "表空间大小(M)", FILE_NAME "文件路径" FROM DBA_DATA_FILES order by TABLESPACE_NAME,FILE_NAME;
--查询临时表空间文件路径
SELECT TABLESPACE_NAME "临时表空间名",BYTES/1024/1024 "表空间大小(M)",FILE_NAME "文件路径" FROM DBA_TEMP_FILES order by TABLESPACE_NAME,FILE_NAME;

查询到默认表空间位置:+DATA/sqms/datafile/users.268.1172934471
后面创建表空间,要放到同一个路径下,设置不同的文件名。
 

--创建表空间
create tablespace TBS_SSCP
  datafile '+DATA/sqms/datafile/tbs_sscp01.dbf' 
  size 30G; --表空间初始的文件大小。
--表空间手动扩容
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp02' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp03' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp04' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp05' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp06' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp07' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp08' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp09' size 30G;
alter tablespace TBS_SSCP add datafile '+DATA/sqms/datafile/tbs_sscp10' size 30G;
--设置默认的表空间
alter database default tablespace TBS_SSCP;
--表空间剩余大小
 SELECT a.tablespace_name "表空间名",
       round(total / (1024 * 1024 * 1024), 2) "表空间大小(G)",
       round(free / (1024 * 1024 * 1024), 2) "表空间剩余大小(G)",
       round((total - free) / (1024 * 1024 * 1024), 2) "表空间使用大小(G)",
       round((total - free) / total, 4) * 100 "使用率 %"
  FROM (SELECT tablespace_name, SUM(bytes) free
          FROM dba_free_space
         GROUP BY tablespace_name) a,
       (SELECT tablespace_name, SUM(bytes) total
          FROM dba_data_files
         GROUP BY tablespace_name) b
 WHERE a.tablespace_name = b.tablespace_name;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值