If you are going to do this in a trigger, I'm betting your driving reason is that you don't have control of the client issuing the INSERT statement.
If this is the case, I'd suggest that you create a new table - call it MySQLQueue and insert the data selectively that is pushed into this table, into that Queue table, then use a job that runs and pushes it over into MySQL.
If you need certain records deleted from your original table you could also do that inside your trigger, but I'd just suggest using an INSTEAD OF trigger to do the job.
Using this approach won't lock your inserts on your original table while you try to synchronize with a remote MySQL server. It does, however, introduce some latency based on the frequency that the job processes your queue, but they are processed asynchronously at least.
While triggers are a very powerful tool, they can easily bring a system to its knees. Use them with extreme caution and ALWAYS very judiciously.