AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-24418

Tulains Córdova's questions

Martin Hope
Tulains Córdova
Asked: 2017-01-05 12:20:37 +0800 CST

Oracke RMAN:备份文件夹更改时恢复数据库

  • 1

设想:

  • 在此文件夹中制作的 RMAN backp:/xxx/yyyy
  • 数据库被意外删除。
  • 出于奇怪的原因,备用件不再在/xxx/yyyy,它们现在在/aaa/bbb
  • 我做了一个启动 nomount,从新位置恢复控制文件/aaa/bbb
  • 我将数据库置于挂载模式。
  • 当我尝试恢复 BD 时它失败了,因为没有找到备份片(恢复的控制文件说备份片应该在/xxx/yyyy)
  • 我尝试将其设置CHANNEL DEVICE TYPE DISK FORMAT为新位置 (/aaaa/bbb),希望 RMAN 足够智能以找到备份片段,但这不能通过备份控制文件来完成。

在这种情况下,我如何将所有备份都放在另一个文件夹中,而不是最初备份到的文件夹中?

oracle restore
  • 1 个回答
  • 366 Views
Martin Hope
Tulains Córdova
Asked: 2016-12-31 05:28:50 +0800 CST

Oracle 9i 中最佳重做大小查询中的幻数

  • 0

我从这篇博文中得到了这个查询,以确定 Oracle10 之前的数据库中的最佳联机重做日志大小。

由于超出我的薪资等级的原因,我在那个特定实例中坚持使用 Oracle 9i,并且在这个版本中,视图V$INSTANCE_RECOVERY缺少该OPTIMAL_LOGFILE_SIZE列):

SELECT
      (SELECT ROUND(AVG(BYTES) / 1024 / 1024, 2) FROM V$LOG) AS "Redo size (MB)",
      ROUND((20 / AVERAGE_PERIOD) * (SELECT AVG(BYTES) FROM V$LOG) / 1024 / 1024, 2) AS "Recommended Size (MB)"
FROM 
     (
                SELECT AVG((NEXT_TIME - FIRST_TIME) * 24 * 60) AS AVERAGE_PERIOD
                FROM V$ARCHIVED_LOG
                WHERE FIRST_TIME > SYSDATE - 3
                AND TO_CHAR(FIRST_TIME, 'HH24:MI') BETWEEN
                '00:00' AND '23:59'
      );

我缩进了查询以更好地理解,但我不明白为什么作者使用幻数20。

有人可以告诉我为什么20以及是否可以改进此查询吗?

optimization transaction-log
  • 1 个回答
  • 84 Views
Martin Hope
Tulains Córdova
Asked: 2016-10-26 06:02:10 +0800 CST

Oracle:启用 PK 是否会重建其索引?

  • 2

设想:

  • 表MY_TABLE有主键约束PK_MY_TABLE
  • 表MY_TABLE还有一个名为的索引IDX_PK_MY_TABLE,它强制约束的唯一性PK_MY_TABLE。

如果我禁用约束PK_MY_TABLE然后重新启用它,索引IDX_PK_MY_TABLE会重建吗?

oracle index
  • 3 个回答
  • 4691 Views
Martin Hope
Tulains Córdova
Asked: 2016-04-13 03:55:02 +0800 CST

Oracle:表空间可以永远处于备份模式吗?

  • 1

最近我发现在旧的 Oracle 8.1.7.3.0 数据库中,存放 AUD$ 表的表空间已经处于备份模式六个月。不知道是谁在六个月前对它发出了 begin backup 命令。

  • 计划备份是冷备份,不会对任何表空间发出结束备份命令。可以毫无问题地关闭和启动数据库。
  • 属于 AUD$ 表的数据文件的修改日期为 just right now。
  • 当您查询 AUD$ 表时,您可以看到它几乎每分钟都在更新。该表是连续插入数据的。
  • 我知道当数据文件处于活动备份模式时会生成 REDO 信息,但是为了 Pete 的缘故,该表空间已经有六个月没有备份模式了。

我的问题:

  • 这个表空间能否永远以活动备份模式继续而不会产生任何后果?
  • 有丢失数据的风险吗?
  • 这是一场等待发生的灾难吗?
  • 这里究竟发生了什么?
oracle backup
  • 1 个回答
  • 975 Views
Martin Hope
Tulains Córdova
Asked: 2016-03-02 07:01:49 +0800 CST

甲骨文。如何在表之间复制 BLOB、LONG RAW 和 BFILE 列

  • 2

我在 Oracle 9i 中有一个表名 mytable。

mytable 的列是

id number(9,0)
C1 LONG RAW,
C2 VARCHAR2(256),
C3 BLOB,
C4 BFILE

当我尝试这样做时:

create this_other_table as
select * from mytable;

我明白了:

ORA-00997: illegal use of LONG datatype

我猜其他属于某种二进制数据的列(BLOB 和 BFILE,除了 LONG RAW)也会产生错误。

有人可以说明如何做到这一点吗?

oracle blob
  • 1 个回答
  • 5459 Views
Martin Hope
Tulains Córdova
Asked: 2015-10-08 08:45:03 +0800 CST

Oracle 9i 中ANSI join 性能不佳的原因

  • 0

请在标记为重复之前阅读最后几段。

在 Oracle 9i 数据库中,此查询运行时间为0.18 秒:

select
    count(*)
from 
    dba_synonyms s,dba_objects t
where
    s.TABLE_OWNER = t.OWNER(+) and
    s.TABLE_NAME = t.OBJECT_NAME(+) and
    s.DB_LINK is null and
    t.OWNER is null;

...但是这个运行时间惊人的120 秒!:

select
    count(*)
from 
    dba_synonyms s left join dba_objects t 
                   on ( s.TABLE_OWNER = t.OWNER and s.TABLE_NAME = t.OBJECT_NAME ) 
where                   
    s.DB_LINK is null and
    t.OWNER is null

请注意,唯一的区别是使用专有的 Oracle 连接语法与 ANSI 连接语法。

这个问题不是这个问题的重复,因为另一个问题是关于一个涉及超过 9 个表的非常复杂的查询,唯一的答案指出除了语法使用(主要是表的顺序)之外,查询非常不同。

在我的例子中,这是一个非常简单的查询,只是两个关系之间的连接,没有主要的差异复杂性,包括表的顺序。

  • 这是 Oracle 9i 中的错误吗?
  • 性能如此显着差异的原因是什么?
performance join
  • 1 个回答
  • 111 Views
Martin Hope
Tulains Córdova
Asked: 2015-07-31 04:57:25 +0800 CST

尽管出现 ORA-01555“snapshop 太旧”警告,dmp 文件是否合适?

  • 0

好吧,问题的标题是不言自明的。

  • 导出已成功完成,但出现警告。
  • 日志显示多个 ORA-01555 snapshot too old 错误。

- 是否可以使用该 dmp 文件在另一个实例中执行完全导入?

- 以受限模式(无用户连接)运行导出是否保证不会发生“ORA-01555 快照太旧”?

oracle import
  • 2 个回答
  • 199 Views
Martin Hope
Tulains Córdova
Asked: 2015-04-02 04:14:36 +0800 CST

Oracle 审计:ACTION_NAME 列中只有“SESSION REC”

  • 2

我被要求生成一份在给定时间段内对某些 Oracle 9i 表执行的操作的报告。

当我查询DBA_AUDIT_TRAIL表时,我只进入SESSION REC列ACTION_NAME。

我期待SELECT,INSERT等DELETE。

  • 我究竟做错了什么?
  • 是什么SESSION REC意思?
oracle oracle-9i
  • 1 个回答
  • 10621 Views
Martin Hope
Tulains Córdova
Asked: 2015-02-24 06:32:06 +0800 CST

Oracle 9.2.4.0 安装停止

  • 1

我正在使用 Oracle 32 位安装程序在 Red Hat Enterprise Linux AS 版本 4(Nahant 更新 8)64 位上安装 Oracle 9.2.4.0(我知道,我知道...)。

它似乎停滞或挂在 17%,而“安装所需的支持文件 32 位”指示“链接挂起”。

在此处输入图像描述

到目前为止,日志是这样说的:

[oracle9@xxxx]$ tail -f installActions2007-09-24_07-34-38PM.log
    copyAsText = null
    JarLoc = /tmp/OraInstall2007-09-24_07-34-38PM/temp36
    gpEntries = [[libvsn_ee9.a ->%ORACLE_HOME%/lib32/libvsn9.a 2214 plats=2=>[46] langs=2=>[en,fr,ar,bn,pt_BR,bg,fr_CA,ca,hr,cs,da,nl,ar_EG,en_GB,et,fi,de,el,iw,hu,is,in,it,ja,ko,es,lv,lt,ms,es_MX,no,pl,pt,ro,ru,zh_CN,sk,sl,es_ES,sv,th,zh_TW,tr,uk,vi]]
, [libntcps9.a ->%ORACLE_HOME%/lib32/libntcps9.a 52696 plats=2=>[46] langs=2=>[en,fr,ar,bn,pt_BR,bg,fr_CA,ca,hr,cs,da,nl,ar_EG,en_GB,et,fi,de,el,iw,hu,is,in,it,ja,ko,es,lv,lt,ms,es_MX,no,pl,pt,ro,ru,zh_CN,sk,sl,es_ES,sv,th,zh_TW,tr,uk,vi]]
, [naeet.o ->%ORACLE_HOME%/lib32/naeet.o 6029 plats=2=>[46] langs=2=>[en,fr,ar,bn,pt_BR,bg,fr_CA,ca,hr,cs,da,nl,ar_EG,en_GB,et,fi,de,el,iw,hu,is,in,it,ja,ko,es,lv,lt,ms,es_MX,no,pl,pt,ro,ru,zh_CN,sk,sl,es_ES,sv,th,zh_TW,tr,uk,vi]]
]
    DllGroup = false

Llamando acción unixActions2.2.0.18.0  touchFile
    source = /folderA/oracle/folderB/OraHome1/lib/ldflags 

我们之前已经在 64 位服务器上成功安装了 32 位的 Ora9i。

你认为这里的问题是什么?

installation oracle-9i
  • 1 个回答
  • 962 Views
Martin Hope
Tulains Córdova
Asked: 2014-08-06 08:28:30 +0800 CST

tnsnames 中服务名称/别名的最佳实践

  • 4

我有这样的想法,在 tnsnames.ora(不是 dblinks 使用的服务器中的连接描述符,而是公共的)文件中为连接描述符提供的服务名称/别名绝不应该与 SID 相关,更不用说服务器的名称。

假设服务器的名称是“myserver”,实例的 SID 是“myinstance”。

我认为为连接字符串提供别名“myinstance-at-myserver”并不是一个好主意,因为您以某种方式将逻辑与物理耦合。

  • 我是对还是错,为什么?

这是最佳做法吗?:

# one server-instance-named descriptor
MYINSTANCE-AT-MYSERVER =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = myserver)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = myinstance)
    )
  )

还是这个?

# several business-named descriptors pointing to the same listener
RRHH =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = myserver)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = myinstance)
    )
  )

FINANCE =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = myserver)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = myinstance)
    )
  )

SALES =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = myserver)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = myinstance)
    )
  )
oracle best-practices
  • 2 个回答
  • 15525 Views
Martin Hope
Tulains Córdova
Asked: 2014-06-28 11:05:52 +0800 CST

审计 MySQL 表上的 DML 操作

  • 0

我们有几个 MySQL 5.0 数据库。

我们一直遇到安全问题,例如未经授权修改记录。

我们需要对 DML 操作实施某种审计,以识别对某些关键表执行 UPDATE 或 DELETE 操作的用户。

我一直在谷歌上搜索任何会激活此类审核的 my.conf 选项,但无济于事。

mysql security
  • 1 个回答
  • 2021 Views
Martin Hope
Tulains Córdova
Asked: 2013-10-09 11:29:06 +0800 CST

Oracle:如何仅将某些角色设置为用户的非默认角色(无 GUI)

  • 0

设想:

  1. 我有实例A
  2. 我有实例B
  3. 我在 instanceA 中有 USER1
  4. 我在 instanceB 中有 USER1
  5. instancA 中的 USER1 具有四个授予它的角色:
    • ROLE1 默认是 admin_option 否
    • ROLE2 默认 false admin_option 是
    • ROLE3 默认 false admin_option 否
    • ROLE3 默认是 admin_option 是
  6. instanceB 中的 USER1 未授予任何角色
  7. 所有提到的角色也存在于 instanceB 中,尽管未授予 USER1
  8. 我已经编写了一个生成 DDL 的脚本,以便在 instanceB 中复制 USER1 的角色授权。

问题:

  1. 我还没有找到一种以编程方式执行以下操作的方法,因为该部分在子句DEFAULT=NO中不存在。GRANT ROLE

    • 将 ROLE1 授予 USER1;-- 管理选项无
    • 使用管理员选项将 ROLE2 授予 USER1 DEFAULT NO ;
    • 将 ROLE2 授予 USER1 DEFAULT NO;
    • 使用管理员选项将 ROLE3 授予 USER1;
  2. 请注意,我希望在 instanceB 中复制与 USER1 在 instanceA 中相同的角色集,这意味着其中两个角色是默认的,两个不是。

  3. 我研究了在授予 ROLE2 和 ROLE3 后将默认角色设置为 falseALTER USER DEFAULT ROLE ,但仅适用于将所有角色设置为默认值或使用 NONE 将所有角色设置为非默认值。

  4. 我找不到仅将 ROLE2 和 ROLE3 设置为非默认值并将 ROLE1 和 ROLE2 设置为默认值的方法。
  5. 我知道我可以使用可视控制台进行设置,但我需要自动执行此操作,因此我需要语法方式来执行此操作。
  6. 我不想让角色要求输入密码。数据库中的所有角色都不是密码角色。
oracle syntax
  • 1 个回答
  • 10126 Views
Martin Hope
Tulains Córdova
Asked: 2013-09-17 10:05:33 +0800 CST

Oracle:截断大表需要很长时间

  • 2

问题

  • 我正在截断一个非常大的表(210+ 百万行)。
  • 自开始以来已经有几个小时了,我不知道什么时候会完成。
  • 有几个这样的表,我想截断。
  • 数据库是 Ora9i。

问题

  • 我怎样才能使截断更快?
  • 另外,有没有办法查看截断操作的进度?
performance truncate
  • 2 个回答
  • 16429 Views
Martin Hope
Tulains Córdova
Asked: 2013-09-14 04:45:33 +0800 CST

导入 Oracle 模式数据而不丢失对存储过程的修改

  • 3

我有这种情况:

  1. 一个巨大(数千张表)、复杂的 Oracle 8 生产数据库,
  2. 一个巨大的(上千张表),复杂的,Oracle 9 开发数据库,​​(与生产相同的结构)
  3. 在开发数据库中,修改了一些存储过程和包,并添加了新的。
  4. 开发数据库在某些模式中有新表
  5. Oracle 8exp和 Oracle 9imp都没有 ROWS ONLY 选项

我们通常这样做,因为这是正确更新数据的唯一方法,因为导入ignore=yes只会插入新数据,但不会更新具有相同 PK 但非 PK 列中的值不同的预先存在的行:

  1. 删除一个架构,然后再次创建用户以拥有一个空架构
  2. 从用户到用户导入到空模式

问题是:

  1. 如何使用来自生产导出的新数据更新开发数据库,​​而无需先删除模式,因为开发数据库中有新的存储过程/包以及修改过的存储过程/包?
  2. 在删除模式后重新创建仅修改过的或新的存储过程以从备份中取回它们的比较过程太容易出错。
  3. 有数千个(字面意思)表,所以我们不想编写一个存储过程来按特定顺序刷新数据等。这需要几个月的时间来编写和测试。

什么是基于导入的解决方案?

编辑:我没有提到 prod 是 Solaris 而 dev 是 RedHat。

schema oracle-9i
  • 2 个回答
  • 4738 Views
Martin Hope
Tulains Córdova
Asked: 2013-09-12 08:53:28 +0800 CST

没有 SA 密码。没有 SQL Server Management Studio。没有操作系统身份验证[重复]

  • 7
这个问题在这里已经有了答案:
你如何重置sa密码? (2 个回答)
5年前关闭。

我有这个问题。

我需要使用 SA 帐户对 MS SQL 数据库执行一些管理任务。

  • 未设置操作系统身份验证。
  • 未安装 SQL Server Manager Manager Studio。
  • 我没有其他管理员数据库帐户。
  • 我确实有权访问 Windows 管理员帐户
  • 数据库服务器上安装的唯一工具如下所示:

在此处输入图像描述

如何激活操作系统身份验证,以便我可以登录数据库并重置 SA 密码?

sql-server sql-server-2005
  • 1 个回答
  • 21653 Views
Martin Hope
Tulains Córdova
Asked: 2013-08-15 05:50:22 +0800 CST

在错误的 pg_dump 日志中寻找什么

  • 3

我们希望以编程方式检测 cron 计划的 pg_dumps 中的错误。

除了检查日志文件是否以“pg_dump:保存数据库定义”结尾:

为了以编程方式检查转储,我可以使用 grep 查找其他哪些说明字符串是可以的。

postgresql monitoring
  • 1 个回答
  • 11616 Views
Martin Hope
Tulains Córdova
Asked: 2013-08-13 10:33:15 +0800 CST

##MS_SQLResourceSigningCertificate##、##MS_AgentSigningCertificate## 等无密码登录是否存在漏洞?

  • 3

我是 MS SQL Server 的新手。

从事 IT 安全工作的同事进行了扫描,显示密码为空的数据库用户。

其中一些是(#包括)

##MS_SQLResourceSigningCertificate##
##MS_SQLReplicationSigningCertificate##
##MS_SQLAuthenticatorCertificate##
##MS_PolicySigningCertificate##
##MS_SmoExtendedSigningCertificate##
##MS_AgentSigningCertificate##

我怀疑它们不是安全威胁,但由于它们也不使用 Windows 身份验证,我不知道如何支持该假设。

这些登录有什么用?

sql-server sql-server-2008
  • 1 个回答
  • 3456 Views
Martin Hope
Tulains Córdova
Asked: 2013-07-09 08:52:40 +0800 CST

如何在“全代理”数据库之间迁移数据?

  • 3

这需要定期完成:

  • 将生产数据库中的数据插入测试/开发数据库,​​以便程序员有新数据进行测试。
  • 出于任何原因将数据从一个数据库迁移到另一个数据库。

注意:数据库是关系型的。

问题是:

  • 数据库采用“所有 PK 都是代理”策略建模。
  • 将数据从一个数据库移动到另一个数据库涉及编程以避免 PK 值(由序列生成)的冲突。
  • 为了在代理键之间实现“等价”,需要一个将源数据库表和目标数据库表的 PK 值配对的表。
  • 必须在迁移之前通过匹配业务键(不是 PK,所以不管理 FK)来创建该表
  • 与具有自然键的表相反,即使是单个表的数据迁移也不是微不足道的。

当所有表都有代理键时,将行从一个数据库复制到另一个数据库的最简单方法是什么?

migration
  • 2 个回答
  • 617 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve