Mysql
 sql >> Database >  >> RDS >> Mysql

Come modificare il fuso orario del server MySQL

In questo articolo parleremo di come cambiare il fuso orario di MySQL sul tuo server in modo che i dati archiviati nei tuoi database utilizzino per impostazione predefinita il fuso orario che hai specificato.

La maggior parte delle volte il tuo fuso orario locale sarà diverso dal fuso orario del server MySQL e questo potrebbe rendere più difficile per te lavorare con i dati all'interno dei tuoi database. Utilizzando i seguenti passaggi puoi aggiornare il fuso orario del tuo server MySQL in modo che corrisponda al tuo per semplificare il lavoro con questi dati.

Questa modifica richiede l'accesso come root a un VPS (Virtual Private Server) o a un piano di hosting di server dedicato, oppure puoi contattare il nostro reparto di supporto per farlo cambiare sul tuo server. Potresti anche semplicemente aver bisogno di sapere come convertire il tempo di MySQL che non richiede l'accesso come root e può essere fatto su un server condiviso.

Cambiare il fuso orario in MySQL

  1. Accedi al tuo server tramite SSH come utente root.
  2. Puoi visualizzare le impostazioni correnti del fuso orario di MySQL usando il seguente comando dalla console:mysql -e "SELECT @@global.time_zone;" Per impostazione predefinita dovresti recuperare qualcosa di simile a:

    +--------------------+ | @@global.time_zone | +--------------------+ | SYSTEM | +--------------------+ Questo perché per impostazione predefinita il tuo fuso orario MySQL sarà impostato sul SISTEMA predefinito del server tempo. Se sei interessato a modificare il fuso orario dell'intero server, puoi farlo impostando il fuso orario in WHM.

  3. Puoi vedere il SISTEMA del server timestamp utilizzando il comando seguente:date Che restituirà:

    Mon Nov 26 12:50:07 EST 2012

  4. Puoi vedere il timestamp corrente riportato dal server MySQL usando il seguente comando:mysql -e "SELECT NOW();" Questo dovrebbe restituire il timestamp corrente:

    +---------------------+ | NOW() | +---------------------+ | 2012-11-26 12:50:15 | +---------------------+

  5. Ora puoi modificare il tuo file di configurazione MySQL con il tuo editor di testo preferito:vi /etc/my.cnf Quindi aggiungi la seguente riga per passare da EST (GMT -5:00 ) a CST (GMT -6:00 ):

    default-time-zone = '-06:00'

    Ora salva /etc/my.cnf file con la tua nuova impostazione predefinita.

  6. Per rendere attiva la modifica ti consigliamo di riavviare il servizio MySQL con il seguente comando:service mysql restart
  7. Ora se provi a vedere di nuovo l'impostazione del fuso orario globale con il comando:mysql -e "SELECT @@global.time_zone;" Ora dovresti ripristinare il tuo nuovo valore predefinito:

    +--------------------+ | @@global.time_zone | +--------------------+ | -06:00 | +--------------------+

  8. Dovresti anche vedere ora che NOW() anche la funzione è stata aggiornata:mysql -e "SELECT NOW();" Questo dovrebbe restituire il timestamp corrente:

    +---------------------+ | NOW() | +---------------------+ | 2012-11-26 11:50:15 | +---------------------+

Ora dovresti sapere come aggiornare l'impostazione del fuso orario del server MySQL, per assicurarti che i dati archiviati nei database siano facili da usare per te. Puoi anche utilizzare fusi orari con nome anziché GMT -6:00 formato, ma ciò richiederebbe prima il caricamento delle tabelle dei fusi orari in mysql Banca dati. Maggiori informazioni su questo possono essere trovate sul sito MySQL per quanto riguarda mysql_tzinfo_to_sql e il caricamento delle tabelle dei fusi orari.