Can I remove transients in the wp_options table of my WordPress install?

前端 未结 3 781
时光取名叫无心
时光取名叫无心 2020-12-22 19:31

I have recently noticed that my wp_options table seems to be a bit large. It contains 1161 rows, and is about 2.1mb in size.

I have installed Clean Opti

3条回答
  •  时光说笑
    2020-12-22 19:45

    You can delete transients as they will be recreated. There can be buildups of expired transients due to failure situations or design issues with some plugins. One way of coping with this is to remove expired transients while allowing current ones to perform their function. Purging only transients which are expired for a few days gives you a chance to monitor which plugins are resulting in stale transients, and take any action to fix issues or report issues.

    The following will find any wp*option tables in the database and delete the five largest transient options which are more than a week stale. This gives long enough for any plugin to delete options which they are going to purge themselves.

    #!/bin/bash
    
    DBNAME="mydatabase"
    DBUSER="${USER}"
    DBPASSWD="secret"
    MYSQLBIN=/usr/bin/mysql # OR MYSQLBIN=/usr/local/mysql/bin/mysql
    MYSQL="${MYSQLBIN} -s -D ${DBNAME} -u ${DBUSER} -p${DBPASSWD}"
    TMP=/var/tmp/
    ENTRIES_FILE="${TMP}entries.$$"
    
    # Find option tables
    for OPTION_TABLE in $( echo 'show tables like "%wp%options";' | ${MYSQL} )
    do
        # Find up to five large long expired transients
        ${MYSQL} > ${ENTRIES_FILE} <

提交回复
热议问题