设置 FTP / HTTP 访问 RAC ASM 磁盘组

配置Oracle XDB端口
本文介绍如何在Oracle10g中配置XML数据库(XDB)的FTP和HTTP服务端口,包括更改默认端口避免与Tomcat冲突的方法,并演示了如何通过SQL语句验证配置效果。

XML Database(XDB)使我们能够使用FTP和HTML协议访问和管理ASM磁盘组中的文件,可以方便的浏览和移入和移出。

Oracle9i支持XML数据库,8080是Oracle XDB(XML数据库)Http服务的默认端口,Oracle XDB的Ftp服务,默认端口是2100。这2个端口与Tomcat的端口是冲突的,所以我们在设置的时候可以改成其他端口。如:HTTP:8888, FTP: 2222。

一.查看端口信息

在Oracle 10g默认情况下,数据库FTP和HTTP的端口是关闭的。这个我们可以通过如下两个函数来验证。

[oracle@racdb1 ~]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Sun Dec 5 11:15:06 2010

Copyright (c) 1982, 2005, Oracle.All rights reserved.

SQL> conn / as sysdba;

Connected.

SQL> select instance_name from v$instance;

INSTANCE_NAME

----------------

orcl1

SQL> select dbms_xdb.getFTPPort from dual;

GETFTPPORT

----------

0

SQL> select dbms_xdb.getHTTPPort from dual;

GETHTTPPORT

-----------

0

SQL>

二.查看监听

先查看一下监听,等会修改之后好做个对比:

[oracle@racdb2 ~]$ lsnrctl status

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 05-DEC-2010 11:17:13

Copyright (c) 1991, 2005, Oracle.All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

STATUS of the LISTENER

------------------------

AliasLISTENER_RACDB2

VersionTNSLSNR for Linux: Version 10.2.0.1.0 - Production

Start Date05-DEC-2010 10:42:45

Uptime0 days 0 hr. 34 min. 27 sec

Trace Leveloff

SecurityON: Local OS Authentication

SNMPOFF

Listener Parameter File/u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora

Listener Log File/u01/app/oracle/product/10.2.0/db_1/network/log/listener_racdb2.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.6.228)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.6.226)(PORT=1521)))

--这里只有2个

Services Summary...

Service "+ASM" has 1 instance(s).

Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...

Service "+ASM_XPT" has 1 instance(s).

Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...

Service "PLSExtProc" has 1 instance(s).

Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

Service "oltp" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 2 handler(s) for this service...

Service "orcl" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 2 handler(s) for this service...

Service "orclXDB" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 1 handler(s) for this service...

Service "orcl_XPT" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 2 handler(s) for this service...

The command completed successfully

三.配置FTP和HTTP端口

SQL>execute dbms_xdb.sethttpport(8888);

PL/SQL procedure successfully completed.

SQL>execute dbms_xdb.setftpport(2222);

PL/SQL procedure successfully completed.

SQL> commit;

Commit complete.

SQL>

查看端口信息:

SQL>select dbms_xdb.getFTPPort from dual;

GETFTPPORT

----------

2222

SQL>select dbms_xdb.getHTTPPort from dual;

GETHTTPPORT

-----------

8888

四.再次查看监听:

[oracle@racdb2 ~]$ lsnrctl status

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 05-DEC-2010 12:08:23

Copyright (c) 1991, 2005, Oracle.All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

STATUS of the LISTENER

------------------------

AliasLISTENER

VersionTNSLSNR for Linux: Version 10.2.0.1.0 - Production

Start Date05-DEC-2010 11:31:30

Uptime0 days 0 hr. 36 min. 53 sec

Trace Leveloff

SecurityON: Local OS Authentication

SNMPOFF

Listener Parameter File/u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora

Listener Log File/u01/app/oracle/product/10.2.0/db_1/network/log/listener.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=racdb2)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=racdb2)(PORT=8888))(Presentation=HTTP)(Session=RAW))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=racdb2)(PORT=2222))(Presentation=FTP)(Session=RAW))

Services Summary...

Service "+ASM" has 1 instance(s).

Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...

Service "+ASM_XPT" has 1 instance(s).

Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...

Service "orcl" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 2 handler(s) for this service...

Service "orclXDB" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 1 handler(s) for this service...

Service "orcl_XPT" has 2 instance(s).

Instance "orcl1", status READY, has 1 handler(s) for this service...

Instance "orcl2", status READY, has 2 handler(s) for this service...

The command completed successfully

如果没有生效,可以重启数据库或者监听

$ srvctl stop database -d orcl
$ srvctl start database -d orcl

五.验证FTP和HTTP访问ASM

5.1FTP访问

[root@racdb2 bin]# ftp racdb1 2222

Connected to racdb1.

220- racdb1

Unauthorised use of this FTP server is prohibited and may be subject to civil and criminal prosecution.

220 racdb1 FTP Server (Oracle XML DB/Oracle Database) ready.

530Please login with USER and PASS.

530Please login with USER and PASS.

KERBEROS_V4 rejected as an authentication type

Name (racdb1:root): system--数据库用户名

331 pass required for SYSTEM

Password:

230 SYSTEM logged in

Remote system type is Unix.

连接成功。注意这里用的登录名和密码是数据库的用户和密码。并且是非sys用户。因为sys的密码需要家as sysdba.这里没办法输入。

登陆后在/sys/asm下可以找到ASM磁盘组信息。ftp的基本命令都可以使用。

Linux 终端访问 FTP 及 上传下载 文件

http://blog.youkuaiyun.com/xujinyang/article/details/6933324

5.2HTTP访问

登陆的用户名和密码也是数据库的。

------------------------------------------------------------------------------

<think> 首先,用户正在查询在Oracle 12c RAC环境中添加ASM磁盘组的方法。 根据系统指令,我需要使用正确的LaTeX格式,用中文回答,并生成相关问题。 另外,在回答中引用段落时,我必须在末尾添加引用标识,比如[^1]。 我得到的引用是: - 引用[^1]:讨论了在RHEL 7.2上使用EMC Powerpath扩展磁盘空间并添加到12C RAC for ASM。 它提到了添加磁盘的步骤,主机人员通知扩展别名为data_center_16、data_center_17。 - 引用[^2]:讨论了Oracle 12c中RAC功能的新特性,特别是ASM和Grid。 它提到OCR现在可以备份在ASM磁盘组中,并给出了一个设置备份位置的例子。 - 引用[^3]:讨论了Oracle 12c ASM管理,包括在RAC环境中创建一个临时表空间。 用户的查询是关于添加ASM磁盘组,不是扩展现有磁盘或备份OCR。 所以,虽然这些引用相关,但我需要专注于添加新磁盘组的通用方法。 结构化我的回答: 1. **介绍**:简要解释在Oracle 12c RAC中添加ASM磁盘组的目的。 2. **步骤**:提供一个清晰的分步指南。 由于引用没有直接提供完整的步骤,我将基于标准Oracle实践进行推断。 引用[^1]提到了添加磁盘,但它是关于扩展现有空间,而不是创建新磁盘组。 引用[^3]涉及在ASM中创建文件,但没有添加磁盘组。 因此,我将使用一般知识。 标准步骤: - 准备物理磁盘。 - 配置ASM实例。 - 使用SQL或ASMCMD创建磁盘组。 在RAC环境中,由于多个节点,需要确保所有节点都能访问磁盘。 3. **包括LaTeX**:在行内使用$...$,例如,用于命令或路径。 对于独立公式(如果适用),使用$$...$$,但在这个上下文中,可能没有数学公式;更多是命令。 所以,我可能使用行内代码块或描述。 4. **中文回答**:整个回答用中文。 5. **生成相关问题**:在最后,添加一个“相关问题”部分。 6. **引用**:如果在回答中使用了引用内容,添加引用标识。 例如,如果我从引用中提取信息。 由于引用[^1]讨论了添加磁盘(尽管是用于扩展),我可以将其纳入准备步骤。 引用[^2]和[^3]可能不直接相关,但我会尽量链接。 关键点: - 添加ASM磁盘组涉及: a. 确保所有节点都能访问共享存储。 b. 使用`asmca`(ASM配置助手)或SQL*Plus命令。 c. 在RAC中,从任一节点操作,因为它会传播。 基于引用[^1]:它提到主机人员告知扩容别名的步骤,所以磁盘必须已经存在并被识别。 步骤大纲: 1. 准备存储:确保所有RAC节点都能看到磁盘。 2. 配置磁盘:可能使用工具如`udev`或ASMLib来标记磁盘。 3. 创建磁盘组:使用`asmca`或SQL命令。 在回答中使用引用: - 参考引用[^1]用于磁盘准备部分。 - 参考引用[^3]用于ASM管理命令。 最终回答结构: - 解释过程。 - 分步指南。 - 代码块用于命令(如SQL或shell命令)。 - 相关问题。 生成相关问题: - 基于主题,比如优化、故障排除等。 确保回答真实可靠: - 基于Oracle文档和标准实践。 </think>### Oracle 12c RAC环境下添加ASM磁盘组的方法 在Oracle 12c Real Application Clusters (RAC) 环境中,添加ASM (Automatic Storage Management) 磁盘组涉及多个步骤,包括物理磁盘准备、共享存储配置和ASM实例操作。以下是基于标准实践的分步指南,确保过程适用于RAC环境(所有节点需协同操作)。引用内容来自站内资料,用于补充关键点[^1][^2][^3]。 #### 1. **准备工作:确保共享存储可用** - **物理磁盘准备**: - 在存储设备上分配新磁盘(例如,通过SAN或NAS),并确保所有RAC节点都能访问这些磁盘。磁盘需格式化为裸设备或使用ASMLib标记。 - 参考主机人员提供的别名(如 `data_center_16`、`data_center_17`)来识别磁盘[^1]。 - 使用 `udev` 或 `multipath` 工具配置磁盘路径(例如,在Linux中): ```bash # 查看所有节点识别的磁盘 $ lsblk $ multipath -ll ``` - **验证磁盘权限**: 确保磁盘权限对所有节点一致(通常为 `oracle:oinstall`),避免访问冲突。 #### 2. **配置ASM磁盘(在ASM实例中)** - **登录ASM实例**: 从任一RAC节点,使用SQL*Plus连接到ASM实例(需SYSDBA权限): ```bash $ sqlplus / as sysasm ``` - **发现并标记磁盘**: 使用 `ASM_DISKSTRING` 参数指定磁盘路径,然后查询可用磁盘: ```sql SQL> ALTER SYSTEM SET ASM_DISKSTRING = '/dev/mapper/data_center_*' SCOPE=BOTH; -- 根据实际路径设置[^1] SQL> SELECT name, path, header_status FROM V$ASM_DISK; -- 确认磁盘状态为"CANDIDATE"(可用) ``` 如果磁盘未显示,检查路径权限或重启ASM实例。 #### 3. **创建ASM磁盘组** - **使用SQL命令或ASMCA工具**: - **方法1:SQL*Plus命令(推荐直接操作)**: 在ASM实例中执行 `CREATE DISKGROUP` 命令,指定磁盘组名称、冗余级别(如NORMAL、HIGH)和磁盘列表: ```sql SQL> CREATE DISKGROUP new_dg NORMAL REDUNDANCY DISK '/dev/mapper/data_center_16' NAME disk16, '/dev/mapper/data_center_17' NAME disk17; -- 磁盘别名对应主机提供的信息[^1] ``` - `NORMAL REDUNDANCY` 表示双重镜像(默认),适用于大多数场景。 - 成功创建后,验证磁盘组: ```sql SQL> SELECT name, state, total_mb FROM V$ASM_DISKGROUP; -- 检查状态为"MOUNTED" ``` - **方法2:ASM配置助手(ASMCA,图形化界面)**: 运行 `asmca` 命令启动工具: ```bash $ asmca ``` 在GUI中选择"Create",添加磁盘并设置属性(冗余级别、分配单元大小)。 #### 4. **验证和使磁盘组生效(在所有节点)** - **挂载磁盘组**: 如果未自动挂载,手动挂载到所有节点: ```sql SQL> ALTER DISKGROUP new_dg MOUNT; -- 在ASM实例中执行 ``` - **检查RAC同步**: 使用 `crsctl` 命令确认资源状态: ```bash $ crsctl status resource -t -w "NAME co new_dg" -- 确保所有节点显示"ONLINE" ``` - **测试使用**: 创建测试文件(如表空间)验证功能: ```sql SQL> CREATE TABLESPACE test_ts DATAFILE '+new_dg' SIZE 100M; -- 类似引用中的表空间创建语法[^3] ``` #### 关键注意事项 - **冗余级别选择**: - `EXTERNAL REDUNDANCY`:无镜像(依赖存储硬件)。 - `NORMAL REDUNDANCY`:双副本镜像(推荐用于高可用)。 - `HIGH REDUNDANCY`:三副本镜像(最高容错)。 - **性能影响**:添加磁盘组时,避免在业务高峰操作,以防I/O竞争。 - **OCR备份**:在12c中,OCR可备份到ASM磁盘组,简化恢复(如引用所述)[^2]。 以上步骤基于Oracle 12c最佳实践,结合了共享存储配置和ASM管理原则。如果遇到磁盘识别问题,参考主机提供的别名信息[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值