Modifica della directory dei dati sul server MySQL DB


10

Ho installato il server mysql 5.6.24 su Windows Server 2012 R2.

Ho importato i file di dump e i file di dati sono memorizzati C:\ProgramData\MySQL\MySQL Server 5.6\data

Voglio cambiare directory come D:\ProgramData\Data.

Potete per favore aiutarmi qualcuno?

Risposte:


10
  1. Apri l'interfaccia della riga di comando di Windows come amministratore e spegni MySQL

    net stop mysql
  2. Copia i dati in D:\ProgramData\Data

    xcopy /s C:\ProgramData\MySQL\MySQL Server 5.6\data D:\ProgramData\Data
  3. Crea o modifica C:\ProgramData\MySQL\MySQL Server 5.6\my.ini

    Aggiungi questo a my.ini

    [mysqld]
    datadir = D:/ProgramData/Data
  4. Avvia MySQL

    net start mysql

    Se non è possibile eseguire net start mysql, provare il pannello di controllo di Windows.

  5. Accedi a MySQL e verifica che tutto sia a posto

Quando accedi a MySQL, esegui questo

mysql> SHOW GLOBAL VARIABLES LIKE 'datadir';

Ricorda di assegnare alla tua nuova directory di dati le stesse autorizzazioni complete per gli utenti del servizio di rete e dell'amministratore utilizzate dalla directory dei dati predefinita, altrimenti causerà il temuto errore "avviato e quindi arrestato". Non eliminare questa directory fino a quando non sei sicuro che la tua nuova funzioni.

Se questo non funziona, ecco il piano di rollback:

net stop mysql
del "C:\ProgramData\MySQL\MySQL Server 5.6\my.ini"
net start mysql

0

Aggiunta di una risposta corrente per MySQL Server 8.0 su Windows 10 per come modificare la directory del database dopo l'installazione (l'ho cercata su Internet e non ho trovato una soluzione e sono quasi impazzita, quindi spero che questo aiuti qualcuno).

I primi passi sono gli stessi delle consuete altre istruzioni per MySQL Server 5.6. L'unica differenza è sostanzialmente il 3 ° passaggio:

  1. Vai ai servizi (ad es. Premi WIN + R, digita services.msc, premi invio) e interrompi il MySQL80servizio facendo clic con il pulsante destro del mouse e facendo clic su "stop" (il nome del servizio viene specificato durante l'installazione, quindi il nome potrebbe essere diverso per te).

  2. Sposta la cartella del database dove vuoi. La posizione iniziale è di solito C:\ProgramData\MySQL\MySQL Server 8.0\data. All'interno della C:\ProgramData\MySQL\MySQL Server 8.0\cartella, dovrebbe esserci un my.inifile. Aprilo per modificarlo con Notepad ++ (o qualche altro blocco note) e cerca le righe che menzionano la vecchia posizione in qualche forma. Dovrebbero esserci due ricorrenze (una per datadir, una per secure-file-priv). Rinominare entrambi nella nuova posizione corrispondente (probabilmente è sufficiente rinominare la datadirparte, ma è meglio prevenire che curare). Inizialmente, di solito sembrano così:

    datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data

    e

    secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"

    Quindi, se la nuova posizione dovrebbe essere E:/MySQL/MySQL Server 8.0/..., rinominare entrambe le voci in questo modo:

    datadir=E:/MySQL/MySQL Server 8.0/Data

    e

    secure-file-priv="E:/MySQL/MySQL Server 8.0/Uploads"
  3. Ora, dopo aver spostato il database e rinominato le voci nel my.inifile, PRIMA di riavviare nuovamente il servizio, apri l'editor del registro (ad esempio premi WIN + R, digita "regedit", premi invio), vai a Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80(ancora una volta, MySQL80è il nome del servizio MySQL che hai scelto durante l'installazione e potrebbe differire da MySQL80) e fai clic con il pulsante destro del mouse sulla ImagePathvoce e scegli modifica. Dovrebbe essere visualizzata una stringa simile a questa:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Questo è fondamentalmente il collegamento al file exe effettivo eseguito dal servizio con un parametro di file di configurazione aggiuntivo, ovvero quel my.inifile che abbiamo modificato in precedenza. Pertanto, qui, ovviamente, anche il percorso del file di configurazione deve essere aggiornato, poiché è stato spostato, quindi per questo esempio, verrà modificato in:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="E:\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Si noti che, ovviamente, è necessario modificare solo il percorso del file di configurazione.

  4. Ora il servizio può essere riavviato! Vai di nuovo ai servizi e fai clic con il pulsante destro del mouse sul MySQL80servizio per scegliere di nuovo l'opzione 'start' e dovrebbe riavviarsi senza problemi. Se il passaggio 3 viene saltato, il riavvio di solito non funzionerà!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.