====== Run MYSQL with data files in memory ======
This is needed to protect the flash card if your application updates the data tables heavily.
1. Put [[backup-mydb.sh]] in ''/usr/local/bin''
2. Edit(set ROOTPW, ...etc) and **run the backup-mydb.sh script once**.
3. Create mount point for new datadir, edit ''/etc/fstab'' , add lines:
# for mysql:
tmpfs /var/mysqldata tmpfs defaults,size=16M 0 2
run:
mount /var/mysqldata
df -h
You see this line in the output:
tmpfs 16M 1.2M 15M 8% /var/mysqldata
4. shutdown mysql, run:
invoke-rc.d mysql stop
5. Edit /etc/mysql/my.cnf, set
datadir = /var/mysqldata
6. replace ''/etc/init.d/mysql'' with this [[mysql-init|modified version]].
(the modified one is based on 5.0.51a-24+lenny2)
7. start mysql, run
invoke-rc.d mysql start
The script will automatically restore all data files to ''/var/mysqldata''
You can also run ''backup-mydb.sh'' by cron periodically.
Next time when you normally shutdown the system, the data files is auto backed up.
When the system restart, the data files is auto restored.