How to change the default variant globally? Is there a way to change the default variation (e.g. size, color) for thousands of Drupal Commerce products on a site? I found the Commerce Default Product Variant module that does it on a per-product basis, but I need to do it globally. 

I am open to doing it directly in MySQL if it won't break anything, but I am not sure how to do so at the moment.
Typically speaking, the default product variation is the first value in the reference field. You can see this in action on a vanilla install by creating a product display that references multiple products and switching the order of the SKUs in the product reference field (easiest if you're using the autocomplete widget). I doubt there's a way to change the order of your field values en masse, and I'm not sure there's a safe SQL query we can pass on to you.

However, if you're similarly open to writing custom module code to solve this, you can do so using hook_commerce_product_reference_default_delta_alter(&amp;$delta, $products). The products variable will be an array of the fully loaded products on the display and the delta value will be initialized to the first one and available for alteration. You can inspect the field values of the products in the array to find the one whose attributes match what you want the default variation to be and update the delta accordingly.

(If you just wanted to write a script to actually update the storage instead of doing this on run-time, you'd want to process your product displays one at a time and do a similar product load / field value inspection to move the items around in the reference field's values so delta 0 was your desired default variation.)