I may be barking up the wrong tree here but, it may worth the effort to restructure the character or text based fields decreasing their default length.
You may have text or character fields that are set to accept 254 characters when they are only populated with 32 characters, this will create a much larger database file than necessary.
In my experience, I have never seen Name fields, Address fields, SSID fields, Phone Number fields that actually require more than 100 characters as a default.
That is where I would start.
If you can reduce the default length of 10 fields in your database by more than half for 8,000,000 records, you may end up with a file size that is manageable.
I have done this with many .dbf files in the past by getting the maximum length of the data in the text, or character based fields whose default values were set to 254 (255) characters, but were populated with many fewer characters than that.
I would typically take the maximum length found in those fields, and add 10 characters just to be safe, and restructure those fields accordingly.
You may get a warning that you could lose data, but have never lost data doing this, and I have ended up with files that were usable in multiple applications.