免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 炸鸡
打印 上一主题 下一主题

[性能调优] 非常奇怪的性能问题 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2003-06-18 17:54 |只看该作者

非常奇怪的性能问题

原帖由 "炸鸡" 发表:
因为内存的不同,所以参数文件(initshoe.ora)是有点不同,shoe是SID名。不同的地方在BLOCK——BUFFERS和SHARE——POOL——SIZE,其它的都一样,当然H80比F80上开得大。     

F80:
db_block_buffers = 26179
sha..........
   

是不是 Oracle 的SGA 太大。如果用文件系统的话,SGA不能超过总内存的1/3.

论坛徽章:
0
22 [报告]
发表于 2003-06-18 18:34 |只看该作者

非常奇怪的性能问题

1。 数据量是否一样?F80是生产系统,H80的数据怎么来的?拷贝么?
2。铁出两个instance地init 参数。
3。查询有很多的磁盘写?很多的sort么?sort_area等参数是否一致?
4。trace session, 看sql 的执行计划是否一样?

如果还不行:
早出查询对应的OS 进程,
sqlplus '/ as sysdba' <<EOF
oradebug setospid $1
oradebug event 10046 trace name context forever,level 8
EOF
然后用9i tkprof处理相应的Trace文件,看看CPU使用,执行路径,以及等待时间的分布。

论坛徽章:
0
23 [报告]
发表于 2003-06-18 18:49 |只看该作者

非常奇怪的性能问题

[quote]原帖由 "炸鸡"]您的意思是7133比SCSI慢?[/quote 发表:
     

听说是慢些的

论坛徽章:
0
24 [报告]
发表于 2003-06-18 21:21 |只看该作者

非常奇怪的性能问题

有难度,有意思

论坛徽章:
0
25 [报告]
发表于 2003-06-19 01:13 |只看该作者

非常奇怪的性能问题

做查询7133 RAID5性能应该很不错,没有写惩罚问题。
我的经验是单个7133盘(18.2G或以下,大的没试过),肯定比内置SCSI盘吞吐率低。

chaoping的方法是从ORACLE内部追查,我再提供一个收集系统性能曲线方法:
把iostat/vmstat打开,2秒种一次,重定向到文件,做查询,停iostat/vmwstat。如果是5L,lvmstat收集对应LV的I/O状态。
在PC上导入到excel中,并把吞吐率(是数据流量)、IOWAIT、USR、SYS等重要指标用图表功能做出曲线,两边都做,对照看有没有一些区别。

论坛徽章:
0
26 [报告]
发表于 2003-06-19 07:16 |只看该作者

非常奇怪的性能问题

7133换个地方试试就完了吗...

论坛徽章:
0
27 [报告]
发表于 2003-06-19 09:24 |只看该作者

非常奇怪的性能问题

[quote]原帖由 "炸鸡"]MOUNT的文件系统名一样,你如果说是在磁盘的那五个位置,这没有留意。但我估计也不会相差这么多吧。[/quote 发表:
   
差的多了,你试试把“热”的内容移动到中间位置,应该有改观!

论坛徽章:
5
荣誉会员
日期:2011-11-23 16:44:17CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-09-18 15:15:45未羊
日期:2014-02-25 14:37:19射手座
日期:2014-12-26 22:55:37
28 [报告]
发表于 2003-06-19 11:13 |只看该作者

非常奇怪的性能问题

[quote]原帖由 "炸鸡"]您的意思是7133比SCSI慢?[/quote 发表:
     
我这里测试的RAID1慢太多,简直无法忍受。
7133的RAID1比SCSI的RAID5写入还要慢很多,不清楚怎么回事。

论坛徽章:
0
29 [报告]
发表于 2003-06-19 11:35 |只看该作者

非常奇怪的性能问题

谢谢各位兄弟。首先,我会尝试将init里面的参数改低,低于三分一,因为这是最容易做的东西。然后再检查其它参数。
回答CHAOPING兄,数据文件是绝对一致,拷贝过来的。
回答MAJOR1028兄,ORACLE的数据文件开一个就是1G,当你建立文件系统的时候,一开始已经是十几个G,现在是占满了中间偏外那个地方,也有部分是在中间了。

我觉得大家不能想着这是个查询,读比写多,因为我发现它是不停地写。CHAOPING和LARRY的方法我都会试,等会儿把INIT贴出来。

论坛徽章:
0
30 [报告]
发表于 2003-06-19 11:38 |只看该作者

非常奇怪的性能问题

F80上的INIT:
db_name = "shoe"
instance_name = shoe

service_names = shoe

# db_files = 80                                                       # SMALL
# db_files = 400                                                      # MEDIUM
# db_files = 1500                                                     # LARGE

control_files = ("/u02/oradata/shoe/control01.ctl", "/u02/oradata/shoe/control02.ctl", "/u02/oradata/shoe/control03.ctl"

open_cursors = 300
max_enabled_roles = 30
# db_file_multiblock_read_count = 8                                   # SMALL
# db_file_multiblock_read_count = 16                                  # MEDIUM
# db_file_multiblock_read_count = 32                                  # LARGE

db_block_buffers = 26179
# db_block_buffers = 100                                              # SMALL
# db_block_buffers = 550                                              # MEDIUM
# db_block_buffers = 3200                                             # LARGE

#shared_pool_size = 31457280  # INITIAL
shared_pool_size = 71487488
# shared_pool_size = 3500000                                          # SMALL
# shared_pool_size = 5000000                                          # MEDIUM
# shared_pool_size = 9000000                                          # LARGE

large_pool_size = 614400
java_pool_size = 20971520

log_checkpoint_interval = 10000
log_checkpoint_timeout = 1800

processes = 300
# processes = 50                                                      # SMALL
# processes = 100                                                     # MEDIUM
# processes = 200                                                     # LARGE

log_buffer = 163840  # INITIAL
# log_buffer = 32768                                                  # SMALL
# log_buffer = 32768                                                  # MEDIUM
# log_buffer = 163840                                                 # LARGE

# audit_trail = false  # if you want auditing
# timed_statistics = false  # if you want timed statistics
# max_dump_file_size = 10000  # limit trace file size to 5M each

# Uncommenting the lines below will cause automatic archiving if archiving has
# been enabled using ALTER DATABASE ARCHIVELOG.
# log_archive_start = true
# log_archive_dest_1 = "location=/u01/app/oracle/admin/shoe/arch"
# log_archive_format = arch_%t_%s.arc

# If using private rollback segments, place lines of the following
# form in each of your instance-specific init.ora files:
#rollback_segments = ( RBS0, RBS1, RBS2, RBS3, RBS4, RBS5, RBS6 )

# If using public rollback segments, define how many
# rollback segments each instance will pick up, using the formula
#   # of rollback segments = transactions / transactions_per_rollback_segment
# In this example each instance will grab 40/10 = 4:
# transactions = 40
# transactions_per_rollback_segment = 10

# Global Naming -- enforce that a dblink has same name as the db it connects to
# global_names = false

# Edit and uncomment the following line to provide the suffix that will be
# appended to the db_name parameter (separated with a dot) and stored as the
# global database name when a database is created.  If your site uses
# Internet Domain names for e-mail, then the part of your e-mail address after
# the '@' is a good candidate for this parameter value.
# db_domain = us.acme.com   # global database name is db_name.db_domain

# Uncomment the following line if you wish to enable the Oracle Trace product
# to trace server activity.  This enables scheduling of server collections
# from the Oracle Enterprise Manager Console.
# Also, if the oracle_trace_collection_name parameter is non-null,
# every session will write to the named collection, as well as enabling you
# to schedule future collections from the console.
# oracle_trace_enable = true

# define directories to store trace and alert files
background_dump_dest = /u01/app/oracle/admin/shoe/bdump
core_dump_dest = /u01/app/oracle/admin/shoe/cdump
#Uncomment this parameter to enable resource management for your database.
#The SYSTEM_PLAN is provided by default with the database.
#Change the plan name if you have created your own resource plan.# resource_manager_plan = system_plan
user_dump_dest = /u01/app/oracle/admin/shoe/udump

db_block_size = 8192

remote_login_passwordfile = exclusive

os_authent_prefix = ""

# The following parameters are needed for the Advanced Replication Option
job_queue_processes = 4
job_queue_interval = 60
distributed_transactions = 10
open_links = 4

mts_dispatchers = "(PROTOCOL=TCP)(PRE=oracle.aurora.server.SGiopServer)"
# Uncomment the following line when your listener is configured for SSL
# (listener.ora and sqlnet.ora)
# mts_dispatchers = "(PROTOCOL=TCPS)(PRE=oracle.aurora.server.SGiopServer)"

compatible = "8.1.0"
sort_area_size = 65536
sort_area_retained_size = 65536




至于H80上的,就是上面写到的两个参数的改变。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP