Come faccio ad assicurarmi che entrambi i server e MYSQL abbiano lo stesso fuso orario?

Perché quando creo un tempo negli script Python .. voglio che corrisponda al tempo di MYSQL.

Come faccio a rendere entrambi pacifici?

2 Solutions collect form web for “Come faccio ad assicurarmi che entrambi i server e MYSQL abbiano lo stesso fuso orario?”

Non si menziona un sistema operativo ma per RedHat derivato dovrebbe essere il system-config-time per impostare il proprio fuso orario. Per MySQL leggere questo URL:

http://dev.mysql.com/doc/refman/5.1/en/mysql-tzinfo-to-sql.html

Per riassumere, ho dovuto caricare i timezones dal sistema operativo:

 mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql 

Aggiungere la seguente row a “ `/ etc / my.cnf` nella sezione mysqld e riavviare:

 default-time-zone='Pacific/Honolulu' 

E Bob è il tuo zio:

 mysql> SELECT @@global.time_zone, @@session.time_zone; +--------------------+---------------------+ | @@global.time_zone | @@session.time_zone | +--------------------+---------------------+ | Pacific/Honolulu | Pacific/Honolulu | +--------------------+---------------------+ 1 row in set (0.00 sec) 

Ho provato il seguente test script:

 import MySQLdb import os import re import time import datetime from datetime import date, datetime, time db = 'test' dbhost = 'localhost' dbport = 3306 dbuser = 'test' dbpass = 'test' start_time = datetime.today() con = MySQLdb.connect(host=dbhost, port=dbport, user=dbuser, passwd=dbpass, db=db) cursor = con.cursor() sql = "SELECT current_time;" cursor.execute(sql) list = cursor.fetchall() con.close() print "------------------------------------------------------------------------------------" print "Python time is: " print start_time print print "MYSQL time is:" for result in list: print result[0] print "-- 

————————————————– ——————————–"

che produce:

 ------------------------------------------------------------------------------------ Python time is: 2010-03-30 22:29:19.358184 MYSQL time is: 22:29:19 ------------------------------------------------------------------------------------ 

Hai la tabella di fuso orario popolata:

 mysql> use mysql; mysql> select count(*) from time_zone; +----------+ | count(*) | +----------+ | 1678 | +----------+ 1 row in set (0.00 sec) 

Nei miei server, lascio time_zone impostato su "SYSTEM" come descritto qui:

http://dev.mysql.com/doc/refman/5.0/en/time-zone-support.html

La variabile di sistema globale time_zone indica il fuso orario del server attualmente in function. Il valore iniziale di time_zone è 'SYSTEM', che indica che il fuso orario del server è lo stesso del fuso orario del sistema.

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.