- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
TLDR?跳到要点。
我最近在测试环境的后端部署了一个带有 Oracle 11g 数据库的解决方案,但性能很糟糕 - 系统无法运行。在较低规范的开发中性能更好。环境。我明白这可能归结为很多很多事情,但 Oracle 设置目前处于第一线,因为它是我最不熟悉的组件(而且我已经没有想法了)。
数据库是使用 dbca 创建的。在 SQL Developer 中直接针对 DB 进行的简单 SELECTS 是可以的,但是通过我们的内部数据访问驱动程序(涉及具有大量连接的复杂查询)会产生糟糕的性能。没有网络延迟问题,数据访问代码在其他地方很好*。
*尽管有点啰嗦 - 改天再说吧。
为了提供帮助,我需要信息。关于以下内容:
SQL Developer 显示 SYSTEM/SYSAUX 的表空间使用率为 99%(分别为 710Mb/600Mb)。这会对性能产生影响吗?
SQL Developer 显示 TEMP 表空间使用 NULL,分配 NULL,使用 NULL,空闲 0,数据文件 NULL。我对数据库运行查询以显示临时文件存在并且在线......我什至删除/重新创建它,但它仍然在“管理数据库”屏幕中显示为 NULL。这是正常行为吗?如果不是,这会对性能产生影响吗?
提前致谢。
最佳答案
TLDR - 空间不是您的问题。
您的报告可能具有误导性。您的数据文件可能正在使用其 当前分配 空间的 99%。但我敢打赌,如果您查看数据文件,您会发现它们可以自动扩展到更大的值。例如,在我的大多数默认设置安装中:
select tablespace_name, round(bytes/1024/1024) current_mb,
round(maxbytes/1024/1024) max_mb, autoextensible
from dba_data_files
where tablespace_name in ('SYSTEM', 'SYSAUX');
TABLESPACE_NAME CURRENT_MB MAX_MB AUTOEXTENSIBLE
SYSAUX 2050 32768 YES
SYSTEM 810 32768 YES
很可能您还有很多剩余空间,除非您的硬盘驱动器已满。另外,如果您真的超出 SYSTEM 或 SYSAUX 空间,它会抛出很多错误。例如,您将无法登录,因为 sys.aud$ 已满,或者统计信息收集在无法写入数据时会抛出异常。
DBCA 的 12c 版本甚至没有提供设置 SYSAUX 和 SYSTEM 表空间的选项。
一个完全空的临时表空间是不寻常的。但这不是坏事。如果内存中没有足够的空间,临时表空间用于排序和散列之类的事情。如果系统运行小型 OLTP 查询并且有足够的内存,则不需要临时表空间。
同样,即使您愿意,DBCA 也不会让您缩小临时表空间的大小。
关于database - Oracle TABLESPACE 分配/使用性能影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19880050/
我对 MySQL 还很陌生,遇到了一个非常有趣的错误,我无法通过 google 和 stackoverflow 搜索找到任何帮助。 我在 MacOS 10.8.3 上运行 MySQL 5.6.10 的
Mysql 不工作,我得到以下错误: [ERROR] InnoDB: Failed to find tablespace for table '"database"."table"' in the c
我在 sql oracle 开发人员上运行这个脚本:- DEFINE TABLESPACE1 = "&TABLESPACE1"; CREATE TABLE "DBUSER" ( "USER_ID"
我试图在目录中创建一个表空间来存储我的数据库,但它每次都返回语法错误。 我进入了 : CREATE TABLESPACE "general" LOCATION "/media/tahnoon/qwer
我想知道 DB2-luw 中 TABLE 和 TABLESPACE 的区别。 最佳答案 表空间是存储表的地方。 它链接物理存储层(磁盘上的文件)和逻辑存储层(表、索引)。 您可以将每个表分配给一个表空
我想知道 DB2-luw 中 TABLE 和 TABLESPACE 的区别。 最佳答案 表空间是存储表的地方。 它链接物理存储层(磁盘上的文件)和逻辑存储层(表、索引)。 您可以将每个表分配给一个表空
TLDR?跳到要点。 我最近在测试环境的后端部署了一个带有 Oracle 11g 数据库的解决方案,但性能很糟糕 - 系统无法运行。在较低规范的开发中性能更好。环境。我明白这可能归结为很多很多事情,但
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎偏离主题,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或 include a mini
我已经多次成功地按照相同的顺序恢复数据库 commerce_db_622: 进入目录/usr/local/mysql/data,执行命令: sudo rm -rf COMMERCE_DB_622. 这
我正在尝试将 Postgres 8.2 中的数据库移动到新的表空间,但是在运行 ALTER DATABASE data_base_name SET TABLESPACE TO tbspc_name 时
我有一个构建过程,可以在数据库第一次运行时引导它。之后,使用 pg_dump 导出数据库,然后为后续构建重新导入,直到执行“强制引导”构建。问题是数据库名称是由构建创建和定义的,然后在构建的开始/结束
我正在尝试使用以下命令将数据库导入 postgres: "C:\Program Files\PostgreSQL\9.5\bin\pg_restore.exe" --dbname=postgres -
我对生产数据库(mysql 版本 5.1.66)运行每日备份 mysqldump 备份: mysqldump --user=username --password=secret -C -e --cre
我尝试使用 Liquibase 创建表格,但我不知道这三个属性:catalogName、remarks 和、tablespace.虽然可以在没有这些属性的情况下创建表,但我仍然想知道这些属性的含义是什
我对 Postgres 命令完全陌生。 我有以下 DB2 命令来创建表和表空间: CREATE USER TEMPORARY TABLESPACE MYSPACE MANAGED BY AUTOMAT
从应用程序执行脚本时出现以下错误: ORA-30032: the suspended (resumable) statement has timed out_ORA-01536: space quot
我使用 ojdbc6.jar 库编写一个 Java 应用程序,通过命令删除 Oracle 中的表空间: drop tablespace test including contents and data
在 PostgreSQL 9.1 中,当您将表(或分区)从一个表空间移动到另一个表空间时,会获取什么类型的表锁? 我是否应该先执行 NO INHERIT 以将其与主表分离? 最佳答案 这将在表(及其
我正在使用 oracle 12c,但在尝试将表空间归属于用户时遇到了一些麻烦。 这是我在可插拔数据库ORAPDB1中处理当前DDL语句时遇到的错误: the tablespace 'INTERVENT
我尝试通过运行以下sql来生成一些测试数据。 BEGIN FOR i IN 1..8180 LOOP insert into SPEEDTEST select 'column
我是一名优秀的程序员,十分优秀!