我的思路是:1. 尽量明确需求,设计数据库表结构时进行多次优化(因为本人不是很精通数据库原理,自己设计数据库时,总是改动多次),以找到相对合理、高效率的表结构
2. 合理创建索引(尽量对唯一性较强的列创建索引,这里也涉及到表结构的设计了,请考虑将唯一性较强、依赖性较弱的列单独建立表)
3. 写SQL语句的时候,建议大数据量的模拟数据,多试试各种条件语句的结果,比较性能并优化条件语句!
4. 控制结果集大小(使用limit语句,使用多页显示,同时请考虑SQL语句中只选择需要的字段)
5. 将服务器端和客户端组建在同一个局域网内(当然,高速度的专网也没问题)总之,最重要的就是需求的明确!需求定了,又指定了开发工具,最终的性能一般来说该怎么样就怎么样了!:)对上面的描述,我觉得1和2是最值得花时间去考虑的(也许是我自己的水平不高);至于3、4只是使用mysql的技巧和经验的问题了,一般的问题在csdn - mysql板块都可能找到解决方案!浅见,:-)  建议参考书《MySQL网络数据库指南》

解决方案 »

  1.   

    我刚刚结束的项目遇到了数据库访问效率的问题。
    是从oracle到postgresql的一个改造项目。
    原来在oracle下面,根本不存在这个问题,但是postgresql就不行了。感觉非常的慢。
    没有办法,修改了好长时间以提高速度。
    建议:
    1>建立索引
    2>避免使用耗时的SQL.例如:多个表的关联,NOT IN, IN等等。
    3>尽量使用存储过程,触发器等等。
    4>最好还是事前优化以下数据迁移逻辑。把能够合并执行的SQL,放到一次去执行。
    5>尽量减少打开记录集的次数。(可以改用一些替代方法)
      

  2.   

    :)
    postgresql 的速度是比较慢的
    所以你会遇到这个问题
      

  3.   

    对postgresql加大sort_mem 可能会好些