Activity Stream
48,167 MEMBERS
6907 ONLINE
besthostingforums On YouTube Subscribe to our Newsletter besthostingforums On Twitter besthostingforums On Facebook besthostingforums On facebook groups

Results 1 to 2 of 2
  1.     
    #1
    Too busy :|
    Website's:
    L337Fx.com BeastieBay.net

    Lightbulb Speed Up Your Web Site With MySQL Query Caching

    One of the best ways to speed up your web application is to enable query caching in your database, which caches commonly used SQL queries in memory for virtually instant access by the next page that makes the same request.
    The reason this method is so powerful is that you don?t have to make any changes to your web application, you just have to sacrifice a little bit of memory. This isn?t going to fix all of your problems, but it definitely can?t hurt.
    Note: if your application updates tables frequently, then the query cache will be constantly purged and you won?t get much or any benefit from this. This is ideal for an application that mostly does reads against the database, such as a Wordpress blog. This also won?t work if you are running on shared hosting.
    Enable Caching with Server Running
    The first thing you?ll want to do is make sure that your installation of MySQL actually has query caching support available. Most distributions do, but you should check anyway.
    You?ll want to run this command from your MySQL console, which will tell you if query caching is available.
    PHP Code: 
    mysqlshow variables like 'have_query_cache';
    +------------------+-------+
    Variable_name    Value |
    +------------------+-------+
    have_query_cache YES   |
    +------------------+-------+ 
    Don?t mistake this as meaning that query caching is actually enabled, because most hosting providers aren?t going to enable this by default. Oddly enough, my Ubuntu Feisty installation already had it enabled?
    Next we?ll need to check and see if query caching is enabled. We?ll need to check more than one variable, so we may as well do it all at once by checking for the variable query%
    PHP Code: 
    mysqlshow variables like 'query%';
    +------------------------------+---------+
    Variable_name                Value   |
    +------------------------------+---------+
    query_alloc_block_size       8192    |
    query_cache_limit            1048576 |
    query_cache_min_res_unit     4096    |
    query_cache_size             8388608 |
    query_cache_type             ON      |
    query_cache_wlock_invalidate OFF     |
    query_prealloc_size          8192    |
    +------------------------------+---------+ 
    Here?s the important items in the list and what they mean:

    • query_cache_size ? This is the size of the cache in bytes. Setting this value to 0 will effectively disable caching.
    • query_cache_type ? This value must be ON or 1 for query caching to be enabled by default.
    • query_cache_limit ? This is the maximum size query (in bytes) that will be cached.

    If the query_cache_size value is set to 0 or you just want to change it, you?ll need to run the following command, keeping in mind that the value is in bytes. For instance, if you wanted to allocate 8MB to the cache we?d use 1024 * 1024 * 8 = 8388608 as the value.
    PHP Code: 
    SET GLOBAL query_cache_size 8388608
    Similarly, the other options can be set with the same syntax:
    PHP Code: 
    SET GLOBAL query_cache_limit 1048576SET GLOBAL query_cache_type 1
    Now how do we tell if it?s actually working? You can use the SHOW STATUS command to pull all the variables that start with ?Qc? to take a look at what is going on under the hood.
    PHP Code: 
    mysqlSHOW STATUS LIKE 'Qc%';
    +-------------------------+--------+
    Variable_name           Value  |
    +-------------------------+--------+
    Qcache_free_blocks      65     |
    Qcache_free_memory      201440 |
    Qcache_hits             18868  |
    Qcache_inserts          2940   |
    Qcache_lowmem_prunes    665    |
    Qcache_not_cached       246    |
    Qcache_queries_in_cache 492    |
    Qcache_total_blocks     1430   |
    +-------------------------+--------+
    8 rows in set (0.00 sec
    You?ll notice in the stats that I have plenty of free memory left. If your server shows a lot of lowmem prunes, you might need to consider increasing this value, but I wouldn?t spend too much memory on query caching for a web server? you need to leave memory available for apache, php, ruby, or whatever you are using.
    Enable in Config File
    If you want these changes to survive a reboot or restart of the mysql server, you?ll need to add them into your /etc/mysql/my.cnf configuration file for MySQL. Note that it might be in a different location on your installation.
    Open up the file using a text editor in sudo or root mode, and then add these values if they don?t already exist in the file. If they do exist, just uncomment them.
    PHP Code: 
    query_cache_size 268435456
    query_cache_type
    =1
    query_cache_limit
    =1048576 
    Query caching can significantly improve the speed of your web application, especially if your application does mostly reads. Monitor the status using the methods above and see how it works over time.


    Credit goes to the original Author
    BlaZe Reviewed by BlaZe on . Speed Up Your Web Site With MySQL Query Caching One of the best ways to speed up your web application is to enable query caching in your database, which caches commonly used SQL queries in memory for virtually instant access by the next page that makes the same request. The reason this method is so powerful is that you don?t have to make any changes to your web application, you just have to sacrifice a little bit of memory. This isn?t going to fix all of your problems, but it definitely can?t hurt. Note: if your application updates Rating: 5

  2.   Sponsored Links

  3.     
    #2
    (╯?□?)╯︵ ┻━┻
    Website's:
    Xenu.ws WarezLinkers.com SerialSurf.com CracksDirect.com
    afaik mysql 4 and 5 come with the cache enabled by default at a reasonable size.

    Also you may wanna note that you can't cache TEXT or BLOB columns.
    Projects:
    WCDDL - The Professional DDL Script
    Top Secret Project: In Development - ZOMG
    ImgTrack - Never Have Dead Images Again!

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. PHP - MySQL query to CSV export
    By ElitePirate in forum Web Development Area
    Replies: 2
    Last Post: 25th Jul 2012, 09:19 PM
  2. mysql query to export database
    By lenney in forum IP.Board
    Replies: 4
    Last Post: 7th May 2011, 03:43 PM
  3. MySql Query
    By GoPantheoN in forum Web Development Area
    Replies: 5
    Last Post: 8th Mar 2011, 02:09 PM
  4. mysql query help ($5 reward)
    By tdsii in forum Web Development Area
    Replies: 20
    Last Post: 10th Jan 2011, 11:52 PM
  5. WordPress database error MySQL server has gone away for query
    By blur88 in forum Webmaster Discussion
    Replies: 10
    Last Post: 27th May 2010, 08:43 PM

Tags for this Thread

BE SOCIAL