I have couple of questions regarding MySQL (InnoDB storage engine) Disk I/O and caching.

1) How does MySQL write data to disk? Does it write at regular
intervals of time or does it write once the value configured
for "innodb_buffer_pool_size" is crossed? What happens to the data
in buffer when power goes down?

2) Is there anyway I can force the data to be written to disk always i.e. simply disable caching? Is there any command or variable through which I can force the writing of the data to the disk?

Thanks & Regards,

Krishna.