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

Sådan ændres MySQL-serverens tidszone

I denne artikel vil vi diskutere, hvordan du kan ændre MySQL-tidszonen på din server, så data gemt i dine databaser som standard vil bruge den tidszone, du har angivet.

Meget af tiden vil din lokale tidszone være anderledes end MySQL-serverens tidszone, og dette kan gøre arbejdet med data inde i dine databaser sværere for dig. Ved at bruge følgende trin kan du opdatere din MySQL-servers tidszone, så den matcher din egen for at gøre arbejdet med disse data nemmere.

Denne ændring ville kræve root-adgang til enten en VPS (Virtual Private Server) eller dedikeret server-hostingplan, eller du kan kontakte vores supportafdeling for at få dette ændret på din server. Du skal muligvis også blot vide, hvordan du konverterer MySQL-tid, som ikke kræver root-adgang og kan udføres på en delt server.

Ændring af tidszonen i MySQL

  1. Log ind på din server via SSH som root-bruger.
  2. Du kan se MySQLs aktuelle tidszoneindstillinger ved at bruge følgende kommando fra konsollen:mysql -e "SELECT @@global.time_zone;" Som standard bør du få noget, der ligner:

    +--------------------+ | @@global.time_zone | +--------------------+ | SYSTEM | +--------------------+ Dette skyldes, at din MySQL-tidszone som standard er indstillet til serverens standard SYSTEM tid. Hvis du er interesseret i at ændre hele serverens tidszone, kan dette opnås ved at indstille tidszonen i WHM.

  3. Du kan se serverens SYSTEM tidsstempel ved hjælp af følgende kommando:date Som vil give tilbage:

    Mon Nov 26 12:50:07 EST 2012

  4. Du kan se det aktuelle tidsstempel rapporteret af MySQL-serveren ved hjælp af følgende kommando:mysql -e "SELECT NOW();" Dette skulle give det aktuelle tidsstempel tilbage:

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

  5. Nu kan du redigere din MySQL-konfigurationsfil med din foretrukne teksteditor:vi /etc/my.cnf Tilføj derefter følgende linje for at ændre fra EST (GMT -5:00 ) til CST (GMT -6:00 ):

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

    Gem nu /etc/my.cnf fil med din nye standard.

  6. For at gøre ændringen aktiv skal du genstarte MySQL-tjenesten med følgende kommando:service mysql restart
  7. Nu, hvis du prøver at se den globale tidszoneindstilling igen med kommandoen:mysql -e "SELECT @@global.time_zone;" Du bør nu få din nye standard tilbage:

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

  8. Du bør også se nu, at NU() Funktionen er også opdateret:mysql -e "SELECT NOW();" Dette skulle give det aktuelle tidsstempel tilbage:

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

Du bør nu vide, hvordan du opdaterer MySQL-serverens tidszoneindstilling for at sikre, at de data, der er gemt i databaser, er nemme at arbejde med. Du kan også bruge navngivne tidszoner i stedet for GMT -6:00 format, men dette kræver først, at du indlæser tidszonetabellerne i mysql database. Mere information om dette kan findes på MySQL-siden vedrørende mysql_tzinfo_to_sql og indlæsning af tidszonetabellerne.


  1. Sådan forbinder du Android med MySQL ved hjælp af Mysql JDBC-driver

  2. Returnerer string array og brug det på AutoCompleteTextview

  3. Er der nogen metoder, der hjælper med at løse almindelige SQLite-problemer?

  4. android.database.CursorIndexOutOfBoundsException