This was the right idea:
> (I also tried it with ibdata1:898M;ibdata2:10M:autoextend, becasue the ibdata1 file is 919552 KB => 898 MB)
I'm guessing you used 1024 in some computation when you should have used 1000 (or vice versa).
Consider a more drastic approach:
0. (go back to 2000M, so you can start mysqld)
1. mysqldump everything
2. stop mysqld
3. turn on innodb_file_per_table
4. configure ibdata1 to be, say, 50M:autoextend
5. delete ibdata1
6. start mysqld -- this should build a 50M ibdata1
7. reload the data (using mysql) -- this will create one .ibd file per table, and put only a little info in ibdata1.
You will need enough space on disk for the dump. Are you low on disk space?
> 2TB diskspace
Eh? Why are you doing this exercise -- ibdata1 is only 0.05% of the disk now! I don't know for sure, but I suspect 2003 can handle files bigger than 2GB (or 4GB). Many years ago, the ibdata1,2,... configuration was created because of file limits on a few operating systems.
For performance, you should increase innodb_log_buffer_size. See
http://mysql.rjweb.org/doc.php/memory
But first, make note of whether your OS and mysql are 32-bit or 64-bit.