How to turn Event Scheduler On permanently in MySQL?
This is quite an easy one really (one of those "Doh"  moments :-) ).  

You set it in my.cnf as described here:

[mysqld]
..
.. other_stuff
..
event_scheduler=on
..
.. more_stuff
..


(or my.ini if you're running Windows as pointed out below) 

From the MySQL documentation here, you have:


  When the Event Scheduler is ON, the event scheduler thread is listed
  in the output of SHOW PROCESSLIST as a daemon process, and its state
  is represented as shown here:


A daemon process is one that runs in the background as described here. Also known as a service in Windows

So, run:

mysql&gt; SHOW PROCESSLIST\G


and there should be an entry like this:

*************************** 2. row ***************************
     Id: 2
   User: event_scheduler
   Host: localhost
     db: NULL
Command: Daemon      &lt;&lt;&lt;&lt;&lt;====== Note: Daemon!!!
   Time: 3
  State: Waiting for next activation
   Info: NULL
2 rows in set (0.00 sec)