![]() | |
#1
| |||
| |||
|
#2
| |||||
| |||||
|
|
I have a personal business need to have a very large SQL database, which I wanted to host on a large SSD. (properly backed up, of course). |
|
I would like to know how well MySQL handles datasets this large. |
|
I had mysql databases in tens of GBs and once in a while, I would have to do repair table. |
|
Anyway, this repairing is VERY painful and I lose money while repair table is done. |
|
My second question is backup. Is there something short of replication that I can use to incrementally back up large datasets? |
#3
| |||
| |||
|
|
Ignoramus28131 <ignoramus28131 (AT) NOSPAM (DOT) 28131.invalid> wrote: I have a personal business need to have a very large SQL database, which I wanted to host on a large SSD. (properly backed up, of course). SSD might be good. Or not. If your load requires many random reads, then SSD shine. Write performance OTOH is rather limited. Especially for short, streaming writes (log I/O). I would like to know how well MySQL handles datasets this large. That's not an exact question. Thus there is no exact answer. Just: 100GB is not large. Real computers have that (and more) RAM. I had mysql databases in tens of GBs and once in a while, I would have to do repair table. MyISAM, I guess? And not properly shutdown? Having to run CHECK/REPAIR table is purely a MyISAM problem. That's one reason why most "real" MySQL installations use InnoDB nowadays. Anyway, this repairing is VERY painful and I lose money while repair table is done. This won't happen with InnoDB. Just make sure you use a recent version of MySQL to get the fast recovery implementation. I suggest to wait for 5.5 becoming GA (should be really soon). My second question is backup. Is there something short of replication that I can use to incrementally back up large datasets? Incremental backups are overrated. What you really want, is fast restore of last backup and then binlog roll forward. With InnoDB even mysqldump is nonlocking. But for bigger databases you want physical backup anyway. For that there is InnoDB hotbackup (now integrated in MySQL Enterprise Backup, free to download). And from Percona there is XtraBackup (open source) XL I have to vote that best answer of the week. |
#4
| ||||||||
| ||||||||
|
|
Ignoramus28131 <ignoramus28131 (AT) NOSPAM (DOT) 28131.invalid> wrote: I have a personal business need to have a very large SQL database, which I wanted to host on a large SSD. (properly backed up, of course). |
|
SSD might be good. Or not. If your load requires many random reads, then SSD shine. Write performance OTOH is rather limited. Especially for short, streaming writes (log I/O). |
|
I would like to know how well MySQL handles datasets this large. That's not an exact question. Thus there is no exact answer. Just: 100GB is not large. Real computers have that (and more) RAM. |
|
I had mysql databases in tens of GBs and once in a while, I would have to do repair table. MyISAM, I guess? And not properly shutdown? |
|
Having to run CHECK/REPAIR table is purely a MyISAM problem. That's one reason why most "real" MySQL installations use InnoDB nowadays. |
|
Anyway, this repairing is VERY painful and I lose money while repair table is done. This won't happen with InnoDB. Just make sure you use a recent version of MySQL to get the fast recovery implementation. I suggest to wait for 5.5 becoming GA (should be really soon). |
|
My second question is backup. Is there something short of replication that I can use to incrementally back up large datasets? Incremental backups are overrated. What you really want, is fast restore of last backup and then binlog roll forward. |
|
With InnoDB even mysqldump is nonlocking. But for bigger databases you want physical backup anyway. For that there is InnoDB hotbackup (now integrated in MySQL Enterprise Backup, free to download). And from Percona there is XtraBackup (open source) |
#5
| |||
| |||
|
|
I had mysql databases in tens of GBs and once in a while, I would have to do repair table. On regular hard drives, this would take literally forever, and on SSDs under an hour. I would not be too quick to blame mysql for this, as I tend to think that it is the Ubuntu's process of updating apparmor that ended up killing mysql. |
#6
| |||
| |||
|
|
On 10-12-10 03:57, Ignoramus28131 wrote: I had mysql databases in tens of GBs and once in a while, I would have to do repair table. On regular hard drives, this would take literally forever, and on SSDs under an hour. I would not be too quick to blame mysql for this, as I tend to think that it is the Ubuntu's process of updating apparmor that ended up killing mysql. you could also focus on why you need to do repairs, and take away thecause of this |
#7
| |||
| |||
|
|
On 10-12-10 03:57, Ignoramus28131 wrote: I had mysql databases in tens of GBs and once in a while, I would have to do repair table. On regular hard drives, this would take literally forever, and on SSDs under an hour. I would not be too quick to blame mysql for this, as I tend to think that it is the Ubuntu's process of updating apparmor that ended up killing mysql. you could also focus on why you need to do repairs, and take away thecause of this |
#8
| |||
| |||
|
|
On 2010-12-11, Luuk<Luuk (AT) invalid (DOT) lan> wrote: On 10-12-10 03:57, Ignoramus28131 wrote: I had mysql databases in tens of GBs and once in a while, I would have to do repair table. On regular hard drives, this would take literally forever, and on SSDs under an hour. I would not be too quick to blame mysql for this, as I tend to think that it is the Ubuntu's process of updating apparmor that ended up killing mysql. you could also focus on why you need to do repairs, and take away thecause of this I suspect that it happened because 1) Apparmor was enabled 2) MySQL database was in a location other than in permitted apparmor location 3) System updates restore default apparmor configs and kill mysql. I am not 100% sure about this. i |
#9
| |||
| |||
|
|
On 2010-12-10, Axel Schwenke <axel.schwenke (AT) gmx (DOT) de> wrote: Having to run CHECK/REPAIR table is purely a MyISAM problem. That's one reason why most "real" MySQL installations use InnoDB nowadays. Is there any disadvantage of InnoDB that I might overlook? |
|
... make sure you use a recent version of MySQL to get the fast recovery implementation. I suggest to wait for 5.5 becoming GA (should be really soon). How about 5.1, would this work satisfactorily? |
|
This is very nice. It looks like MySQL plus InnoDB is the winner. Right? |

#10
| |||
| |||
|
|
On 12/11/2010 12:26 AM, Luuk wrote: On 10-12-10 03:57, Ignoramus28131 wrote: I had mysql databases in tens of GBs and once in a while, I would have to do repair table. On regular hard drives, this would take literally forever, and on SSDs under an hour. I would not be too quick to blame mysql for this, as I tend to think that it is the Ubuntu's process of updating apparmor that ended up killing mysql. you could also focus on why you need to do repairs, and take away thecause of this Yes. If you don't have ECC memory, you WILL get data corruption. See "http://www.stanford.edu/class/ee380/Abstracts/101110.html". The architects of Google point out that if you sort a terabyte twice without ECC memory, you will get different results. John Nagle |
![]() |
| Thread Tools | |
| Display Modes | |
| |