my understanding is that the datafiles are created when the server
initializes, and this this is the designed and expected behavior. Most
other database products use a similar model. Your scenario cannot
happen. You specify how many innodb data files and how large in your
config file. when the server starts, it allocates all the space you
requested. if the server cannot find the space at startup, you get an
error. if during an import the file size is exceeded, you get an error
and the import stops. you cannot overrun your disk.
jeff
[EMAIL PROTECTED] wrote:
I agree with David. If there is no present way to recover unused InnoDB
tablespace, then we (as a community) seriously need to create a tool to do
just that. How have we gone so long without it? I always assumed it was
possible (I guess I have been just lucky enough to not need to do it
yet....)
What if, during the course of a major data import, I try something that
creates a working table that expands my datafile to fill my available disk
space. I might have made a logical error or not. Regardless of why it
filled up, without the ability to reclaim that room, an entire server
could be royally scr***d (assuming a server that supports a mix of InnoDB
and other table types).
Please tell me there is something other than a dump-delete-import that can
be used to shrink InnoDB tablespaces.
Shawn Green
Database Administrator
Unimin Corporation - Spruce Pine
David Seltzer <[EMAIL PROTECTED]> wrote on 08/03/2004 12:42:03 PM:
Thanks Marc,
Is there really no way to reclaim unused space in an InnoDB table space?
If
not, why is this not considered a tremendous limitation?
-Dave Seltzer
-----Original Message-----
From: Marc Slemko [mailto:[EMAIL PROTECTED]
Sent: Tuesday, August 03, 2004 12:31 PM
To: David Seltzer
Cc: [EMAIL PROTECTED]
Subject: Re: InnoDB TableSpace Question
On Tue, 3 Aug 2004 10:07:25 -0400 , David Seltzer <[EMAIL PROTECTED]>
wrote:
Hi all,
I've been searching the archives & mysql documentation for a while and
I
can't seem to find an answer to my question -
Is there a way to force InnoDB to shrink its filesize? I just dropped
a
7GB
table, but it hasn't freed up the disk space and I need it back. From
what
I've been reading, a restart will cause this to happen, but I'm in a
production environment, and I'm afraid that InnoDB will take its sweet
time
while my users are holding their breath.
Does anyone have any experience with this?
No, a restart will not shrink it.
Currently the only option I can think of is to do a dump and restore,
using mysqldump (since innodb hot backup just copies the data file, it
won't be of any use in shrinking it).
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]
--
Jeff Mathis, Ph.D. 505-955-1434
Prediction Company [EMAIL PROTECTED]
525 Camino de los Marquez, Ste 6 http://www.predict.com
Santa Fe, NM 87505
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]