dipende se parliamo di myisam o innodb.
nel primo caso il metodo "brutale-ma-che-funziona" è fermare i server, copiare i file binari con le tabelle nel nuovo server, avviare il server windows et voilà
---
per innodb potresti tentare la stessa cosa, ma te lo sconsiglio per tutta una serie di motivi sui quali non mi dilungo.
in questo caso ti serve un dump ASCII (lo puoi fare anche con myisam), del tipo
mysqldump -uroot -ppasswordroot --opt nome_db >dump.sql
in windows
mysql -uroot -ppasswordroot
create schema nome_db;
use nome_db;
source dump.sql;
-------
Ci sono dei "ma"
Il primo è la codifica dei caratteri, dei server, delle tabelle e dei client (!!! sì non è esattamente lineare la gestione in mysql).
Se hai usato "normali" caratteri, aggiungi in mysqldump un bel
--default-character-set=latin1, o quello che hai utilizzato.
Questo è importante per evitare problemi con le accentate, in primo luogo.
----
Altro "ma": i trigger
Ci sono? se sì->tocca pigliarli e verificare per bene che siano "rinati"
----
Altro ma: le versioni. In generale il restore ASCII funzionicchia... ma non sempre.
Cerca quindi di avere su windows una versione la più vicina possibile a quella mac (se vuoi evitare rotture di balle).
Nel caso capitino (le rotture), ti tocca "purgare" il dump di tutta la croppa che mysqldump ci mette (per bloccare gli aggiornamenti blablabla).
Normalmente (se è un lavoro da fare una-tantum) apro direttamente con notepad++ e "purgo" a mano.
Altrimenti scriptone awk
---
Altro ma: la dimensione del dump ed il tempo di caricamento con ricreazione degli indici.
Se supponiamo che il tuo db sia piccolo (piccolo per me vuoi dire fino nella fascia 2-4GB) in generale non hai problemi.
Se il db è grande il tempo di ricreazione degli indici può diventare notevole; in questo caso ci sono parecchi approcci diversi
1) dumpare e restorare a "blocchi"
2) -se hai una macchina con parecchia RAM- creare un ramdisk, spostare lì la cartella dati, importare, bloccare il server, spostare il file binario nella cartella definitiva "fisica", cambiare la cartella dati, riavviare il server
3) decidere se conviene o meno lasciare attiva la creazione degli indici durante i singoli insert, o farlo alla fine. dipende dalle circostanze; paradossalmente l'opzione B può darti problemi nel caso in cui non hai sufficiente memoria (o equivalentemente le variabili del server mysql non la concedono) per il sort.
Della serie "talvolta chi va piano va lontano"
----
Riassunto: se il db è piccolissimo [100-300MB], e le versioni di mysql sono molto simili, al 95% ti basta un mysqldump --default-character-set=latin1 blablabla e relativo restore.
Fine dei problemi.
Fossi in te comincerei a provare così