• 【性能测试】数据库优化


    数据库优化

    1. Oracle
    1)查询和修改数据库最大连接数

    查看当前的数据库连接数:
    select count(*) from v$process;  
    数据库允许的最大连接数:
    select value from v$parameter where name ='processes';
    修改数据库最大连接数:
    ----设置数据库最大连接数为2000  
    alter system set processes=2000 scope = spfile;   
    ----关闭/重启数据库  
    SQL> shutdown immediate  
    SQL> startup 
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    1. 优化SGA和PGA大小
      Ø SGA: System Global Area是Oracle Instance的基本组成部分,在实例启动时分配;系统全局域SGA主要由三部分构成:共享池、数据缓冲区、日志缓冲区。
      Ø PGA: Process Global Area是为每个连接到Oracle database的用户进程保留的内存。
      SGA的大小:一般物理内存20%用作操作系统保留,其他80%用于数据库。
      SGA普通数据库可以分配40%-60%之间,PGA可以分配20%-40%之间。
    1、以dba身份登录
    并查看SGA信息:
    SQL>show parameter sga;
    查看PGA信息:
    SQL>show parameter pga2、修改sga_target
    SQL>alter system set sga_target=436M;
    3、修改sga_max_size
    SQL> alter system set sga_max_size=436M scope=spfile;
    4、重启数据库使其生效:
    SQL>shutdown immediate;
    ##注意,重启前一定先完成上述两部操作,且sga_target不得大于sga_max_size,一般保持两者相等。否则可能导致数据库无法启动。
    SQL>startup
    5、查看SGA是否生效:
    SQL>show parameter sga
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    1. 优化缓冲区高速缓存
    1、	增大缓存大小
    ----检查当前缓存大小  
    SELECT name, value FROM v$parameter WHERE name LIKE%buffer%’;    
    ----修改缓存大小  
    ALTER SYSTEM SET db_cache_size = 200M scope = both; 
    2、	增大重做日志缓存大小
    ----检查当前重做日志缓存的大小  
    SELECT name, value FROM v$parameter WHERE name LIKE%log_buffer%’;    
    ----修改重做日志缓存的大小  
    ALTER SYSTEM SET log_buffer = 200M scope = both;
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    2. 数据库配置文件

    1. 数据库配置文件\WEB-INF\classes\datasource.properties中最大连接数默认是20,建议修改为200
      在这里插入图片描述
      2)配置了maxWait之后,缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock属性为true使用非公平锁。
      在spring-jdbc.xml里加
  • 相关阅读:
    Leetcode 90. 子集 II
    Intel汇编-内联汇编使用全局变量
    TiUP 简介
    JSP基础语法和指令(二)
    【回归预测-lssvm】基于粒子群算法优化最小二乘支持向量机lssvm实现数据回归预测附matlab代码
    zephyr的启动流程
    重仓比特币
    头歌答案HTML——基础
    记一次经典SQL双写绕过题目[极客大挑战 2019]BabySQL 1
    开发 AppWidget
  • 原文地址:https://blog.csdn.net/weixin_42368607/article/details/132802228