Difference between revisions of "MySQL Time Zone Tables"

From MythTV Official Wiki
Jump to: navigation, search
(Do this before attempting to install 0.26)
Line 1: Line 1:
 
[[Category:MySQL]] [[Category:Troubleshooting]]
 
[[Category:MySQL]] [[Category:Troubleshooting]]
 
Starting with MythTV version 0.26, the time zone tables must be loaded
 
Starting with MythTV version 0.26, the time zone tables must be loaded
in MySQL.
+
in MySQL. This should be done '''before''' attempting the upgrade. ''mythtv-setup''
 +
and ''mythbackend'' will not start without the tables loaded and an error
 +
message will apppear in the respective log explaining that.
  
Distributions that '''don't''' have the time zone tables loaded:
+
Distributions that '''don't''' have the time zone tables loaded (0.26 packagers may load the tables for you:)
 
<pre>
 
<pre>
 
Ubuntu 12.04
 
Ubuntu 12.04
Line 33: Line 35:
 
</pre>
 
</pre>
 
the tables are loaded and no further action is required.
 
the tables are loaded and no further action is required.
 
 
{{Note box|If the time zone tables are updated, then the
 
{{Note box|If the time zone tables are updated, then the
 
procedure below should be repeated.}}
 
procedure below should be repeated.}}
  
 
If the response looks like:
 
If the response looks like:
 
 
<pre>
 
<pre>
 
+--------------------------------------------------------------+
 
+--------------------------------------------------------------+

Revision as of 21:00, 7 October 2012

Starting with MythTV version 0.26, the time zone tables must be loaded in MySQL. This should be done before attempting the upgrade. mythtv-setup and mythbackend will not start without the tables loaded and an error message will apppear in the respective log explaining that.

Distributions that don't have the time zone tables loaded (0.26 packagers may load the tables for you:)

Ubuntu 12.04
Mythbuntu 12.04
Mythbuntu 10.04
Fedora 16
Fedora 17

Distributions that do have the timezone tables loaded:

Gentoo (confirmed for dev-db/mysql-5.1.61)

To see if the tables are already loaded, enter mysql and type:

SELECT CONVERT_TZ('2012-06-07 12:00:00', 'GMT', 'America/New_York');

If the response looks like:

+--------------------------------------------------------------+
| CONVERT_TZ('2012-06-07 12:00:00', 'GMT', 'America/New_York') |
+--------------------------------------------------------------+
| 2012-06-07 08:00:00                                          |
+--------------------------------------------------------------+

the tables are loaded and no further action is required.

Important.png Note: If the time zone tables are updated, then the procedure below should be repeated.

If the response looks like:

+--------------------------------------------------------------+
| CONVERT_TZ('2012-06-07 12:00:00', 'GMT', 'America/New_York') |
+--------------------------------------------------------------+
| NULL                                                         |
+--------------------------------------------------------------+

then the tables must be loaded.

Assuming the distribution's time zone information is in /usr/share/zoneinfo, type:

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p<yourpassword> mysql

Remove the -p<yourpassword> from the above if you don't have one.

Restart MySQL, and repeat the initial test.

References: