Hello, I am indexing a decent sized table( ~400M rows, 20 gig), and am looking 
for a way to monitor the progress of the indexing.  I imported the data with 
keying turned off (alter table disable keys), then did the enable keys 
command after I imported the data with load data infile.

I of course expect this to take a couple of days, but I'd feel better if I had 
some way of monitoring the progress, so that I'd know if I had some sort of 
configuration error that was going to make it take weeks, or something crazy 
like that.  I tried just listing the content of the database directory to see 
if the index file size was increasing, but it's just staying constant, even 
though the last updated time keeps going up.  This worries me slightly!

I considered timing an index generation from a subset of the data, but I am 
unfamiliar with the indexing processes, and I am not sure if the time would 
increase exponentially based on the number of records being indexed, or if it 
is a linear relationship.

Also, does anyone know of a method to get the faster indexing method to work 
on large tables?  I tried bumping up the myisam_max_sort_file_size in my.cnf, 
but it tops out at 4G, and even at that setting my show processlist is 
returning a repair with keycache, instead of the other, faster method which I 
can't recall the name of.

Any tips to speed this process up, or at least see how long it's going to take 
would be greatly appreciated.  I can understand it taking days, but I would 
like to not have to wait weeks  I've attached the relevant parts of my 
my.cnf.  The machine is an Athlon 2000XP with 1/2 gig of ram and a raid 
array.  I will likely increase the RAM soon.  It doesnt' seem to be maxing 
out the CPU all the time -- I think disk I/O is the bottleneck.

Thanks very much for any help...

Jeff Neuenschwander



[mysqld]
port            = 3306
socket          = /var/lib/mysql/mysql.sock
skip-locking
set-variable    = key_buffer=350M
set-variable    = max_allowed_packet=1M
set-variable    = table_cache=256
set-variable    = sort_buffer=4M
set-variable    = record_buffer=1M
set-variable    = myisam_sort_buffer_size=128M
set-variable    = thread_cache=8
# Try number of CPU's*2 for thread_concurrency
set-variable    = thread_concurrency=8
#log-bin
server-id       = 1
set-variable    = myisam_max_sort_file_size=75000M

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to