Manual:RefreshLinks.php

refreshLinks.php is a maintenance script used to [re]fill pagelinks, categorylinks, imagelinks tables. You should run it if you found that Categories are empty or don't show all pages, if "What links here?" doesn't work well or in some other link-related trouble. Additionally this script purges those links, which point to non-existing pages, from the tables pagelinks, imagelinks, categorylinks, templatelinks, externallinks, iwlinks, langlinks, redirect, and page_props.

Invocation
php maintenance/refreshLinks.php [starting_article]

for example, if you want the script to start with the page with id 8000:

php maintenance/refreshLinks.php 8000

Advanced Usage
php refreshLinks.php [--conf|--dbpass|--dbuser|--dfn-only|--e|--globals|--help|--m|--new-only|--old-redirects-only|--quiet|--redirects-only|--wiki] This also supports the common options as well.

Example
vi-notebook:/var/lib/mediawiki1.7# php maintenance/refreshLinks.php Refreshing link table. Starting from page_id 1 of 1426. 100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400

Avoiding memory issues
This script may run into memory issues. To avoid this you may like to set a last page_id to refresh.

php refreshLinks.php --e 1500

To do the next set of page_ids you enter

php refreshLinks.php -- 1500 --e 3000

Just continue until all page ids in your wiki were refreshed.

If you forgot to set a last page_id to refresh and the script runs out of memory simply rerun it with the last output page_id as the article to start at, e.g.

php refreshLinks.php -- 1600