标签: oracle

每个 Oracle DBA 都应该知道的事情

这可能包括:

  • 值得一读的书;
  • 值得拥有的工具;
  • 等等。

oracle database database-administration

6
推荐指数
2
解决办法
4511
查看次数

Oracle 和 SQL Server 可以存在于同一台服务器上吗?

我们想在运行 Oracle 的旧机器上安装 SQL Server。它们不能在同一台机器上共存有什么原因吗?

oracle sql-server

6
推荐指数
1
解决办法
1万
查看次数

何时重新链接 Oracle?

互联网上的各种来源建议在每次操作系统升级和/或补丁后重新链接 Oracle 二进制文件是必要的。

我可以理解升级 glibc 时需要重新链接。有些包可能不需要重新链接,有些需要,有些我不确定:

  • 升级 glibc -> 我想需要重新链接
  • 升级 vim -> 我想不需要重新链接
  • 升级 gzip -> 我不确定
  • 升级内核 -> 我不确定

有没有人有一个列表,或者任何人都可以向我指出 Oracle 实际链接的库的列表?我不是 Oracle DBA,所以我对 Oracle 链接过程一无所知。我什至不确定我是否真的了解 Oracle 在重新链接期间正在做什么:在二进制软件中,在安装后进行自己的链接并不是一种常见的做法,是吗?

无论如何,长话短说:我有几个 RHEL[345] 盒子,我需要对其应用一些补丁。大多数机器都运行 Oracle,我想知道哪些补丁需要重新链接,哪些不需要。尽可能详尽的列表会很好:)

oracle linux redhat database update

6
推荐指数
1
解决办法
1万
查看次数

如何判断 Oracle 数据库是否已挂载和激活?

IANADBA,但我正在编写一个脚本,只要尚未激活 oracle 备用数据库,该脚本就会采取行动。我正在寻找的是两个查询(或查询集,如有必要)。

1 - 数据库是否已挂载(例如,有人做过“更改数据库挂载备用数据库”)

2 - 如何判断数据库是否已激活(如“alter database activate standby database”)?

正如我所提到的,我正在寻找查询,但如果系统中有某种方法可以告诉我,我也愿意接受。谢谢!

更新

我接受了下面的建议(稍作修改,因为我正在处理 Oracle 8i,我得到了这个:

 SQL>  SELECT INSTANCE_NAME, DATABASE_STATUS, INSTANCE_ROLE from v$instance; 

 INSTANCE_NAME    DATABASE_STATUS   INSTANCE_ROLE
 ---------------- ----------------- ------------------
 RGR01            ACTIVE            PRIMARY_INSTANCE
Run Code Online (Sandbox Code Playgroud)

目前,此实例正在积极恢复存档日志,但不是“实时”的。我仍在寻找一种方法来判断它是否没有作为备用数据库安装。

oracle sql database

6
推荐指数
1
解决办法
9万
查看次数

您如何确定 Oracle 数据库的所有者

在 Unix 服务器中安装 Oracle 数据库时,用于安装的 Unix 用户 ID 将成为数据库的所有者。在 shell 脚本中确定哪个 Unix 用户是 Oracle 安装的所有者的最可靠和最通用的方法是什么?我的意思是,您可以对安装创建的文件执行 grep 以查找此信息,还是应该对特定目录中的特定文件使用 ls 命令。如果要检查的文件的名称也是可变的,我需要有一种方法来确定文件的名称和路径。

oracle owner

6
推荐指数
1
解决办法
8458
查看次数

ORA-01019 错误仅作为管理员

我有一个奇怪的问题。

我已经在运行 Windows Server 2008R2 的终端服务器上安装了 Oracle 10g 客户端。当我尝试使用 Toad 连接到 Oracle 时,收到错误“ORA-01019 无法在用户端分配内存”。但这只有在我以管理员身份登录时才会发生。

如果我以普通用户身份连接,则可以毫无问题地连接。另外 - 如果连接了普通用户,我可以作为管理员毫无问题地连接。

有什么想法吗?

oracle windows

5
推荐指数
1
解决办法
8059
查看次数

如何更改与 Oracle 数据库的最大连接数?

如何在启动时更改与 Oracle 数据库的最大连接数?我用 :

ALter system set sessions=500 scope=spfile; 
Run Code Online (Sandbox Code Playgroud)

但是,重新启动数据库后,使用 show parameter sessions 仍然为会话提供值 772

奎。

oracle database

5
推荐指数
1
解决办法
1万
查看次数

为 Oracle 数据库设置 SSD 阵列,建议?

我正在为一个小型但读取 I/O 密集型数据库配置服务器。它用作公共访问更大的 Oracle RAC 数据库的主索引。在查看 I/O 要求时,确定一组 SSD 将提供所需的性能,并且成本低于大量 SAS 15K 轴。我有一台 HP 服务器,带有仅连接到 SSD 的 Smart Array P400。控制器有 256MB 的 BBWC。SSD 是三星(我相信)制造的基于 60GB SLC 的 2.5" SATA。

我想知道是否有人了解 RAID 10 或 5 的最佳条带大小、文件系统建议?我们将使用 Oracle 11g,所以我相信我需要有一个文件系统而不是使用 RAW 块设备。服务器将运行 RHEL 5.5。

在过去的几个月里,我阅读了大量关于 SSD 的文章,我并不反对做更多的工作,但是我的 google-fu 已经开始让我无法继续前进。我在 SSD RAID 上找到的大多数文档都是针对那些为家用 PC 上的启动驱动器执行消费级 SSD RAID 0 的人,以加快 Windows 7 启动和加载游戏的速度。我的意思是,我不是在找人来做我的工作,只是提供他们的任何经验或他们找到的文档的链接。

提前致谢!

编辑一些额外的信息,而不是回复每一条评论:

驱动器空间根本不是问题,因为数据库足够小,可以毫无问题地安装在其中一个 SSD 上。

作为一个读取量很大的数据库(4-8k 中的 95%+ 随机读取),我认为我可能会从 RAID 5 中获得更好的性能,因为我可以从阵列中的 N-1 个驱动器读取,而不仅仅是从阵列中的活动磁盘读取镜像,因为我读过一些内容表明 Smart Array P400 不支持从 RAID 10 组中的镜像两侧读取。也就是说,在我不得不担心之前,我相当肯定控制器最终会成为瓶颈。

关于 …

oracle raid storage ssd oracle-11g

5
推荐指数
1
解决办法
5651
查看次数

在 CentOS/RHEL Linux 上设置 Oracle 即时客户端 - 适用于 PHP 和 Perl

我正在尝试设置 CentOS 5.5/64 位 VM 以使用 PHP 和 Perl 脚本访问远程 Oracle 数据库。(我没有使用Oracle的经验,之前只编程和管理过一些PostgreSQl和MySQL。)

我已经安装了以下 Oracle Instant Client rpm:

oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm
oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm
oracle-instantclient11.2-sqlplus-11.2.0.2.0.x86_64.rpm
Run Code Online (Sandbox Code Playgroud)

并将以下变量添加到我的 .bash_profile 中:

export TNS_ADMIN=/etc
export ORACLE_HOME=/usr/lib/oracle/11.2
export LD_LIBRARY_PATH=$ORACLE_HOME/client64/lib
PATH=$PATH:$HOME/bin:/sbin:$ORACLE_HOME/client64/bin
Run Code Online (Sandbox Code Playgroud)

/etc/tnsnames.ora我将从运行 Oracle 数据库的远程站点的同事那里收到的信息写入到该文件中:

some_string =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = my_address)(PORT = my_port))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = PDTT)
    )
  )
Run Code Online (Sandbox Code Playgroud)

好的部分是我现在可以通过运行从 CLI 进行连接

sqlplus 'my_user/my_password@//my_address:my_port/PDTT'
Run Code Online (Sandbox Code Playgroud)

然后可以通过发出以下命令查看一些表:

select table_name from user_tables;
Run Code Online (Sandbox Code Playgroud)

而且我已经sudo pecl install oci8成功运行,添加了包含以下内容的文件/etc/php.d/oci8.ini

extension=oci8.so
Run Code Online (Sandbox Code Playgroud)

并可以看到以下 phpinfo() 输出

在此输入图像描述

现在我的疑问和问题请: …

oracle php perl

5
推荐指数
1
解决办法
3万
查看次数

如何在 Ubuntu 18.04 上安装 Oracle OCI8 即时客户端

我想分享一些有关我的 OCI8 安装以访问 Oracle 数据库的信息。

如果出现“ PHP 启动:无法加载动态库 'oci8.so' ”之类的错误

或“检查 Oracle Instant Client 库版本兼容性...配置:错误:未找到从 libclntsh.so 到 /opt/oracle/instantclient/libclntsh.so.*.1 的链接

或者只是想安装 Quick&Easy OCI8 以在您的 php 和 Oracle 数据库之间建立连接,您来对地方了!

oracle php database

5
推荐指数
1
解决办法
3万
查看次数