Mysql

我在 MySQL 的 sys 數據庫中找不到時區表

  • October 27, 2021

對於我的 Django 應用程序,我必須將時區設置為 UTC,但是我無法設置它,因為我在系統數據庫中找不到與時區相關的任何表。

我怎麼得到那些?此處https://dev.mysql.com/downloads/timezones.html中可用的腳本僅涉及在表中載入數據而不是創建它們。

  • MySQL 版本:5.7
  • 作業系統:Windows

我曾經遇到過和你一樣的問題,我按照這些快速步驟解決了這個問題。

請關注以下:

環境:

  • MySQL 版本:5.7
  • 作業系統:Windows 10(64 位)

腳步:

  • 下載包含預建時區表數據文件的包。你可以在這裡下載https://dev.mysql.com/downloads/timezones.html
    • timezone_2018e_posix_sql.zip - MySQL 5.7版的****POSIX 標準
  • 解壓下載的包,你會得到一個名為timezone_posix.sql的文件
  • 在MySQL的目錄中打開命令行。例如:在我的電腦上,這是**“C:\Program Files\MySQL\MySQL Server 5.7\bin”**
  • 執行命令mysql -u root -p以 root 訪問權限登錄 MySQL,然後輸入密碼。
  • 執行命令show databases;查看所有數據庫。您將看到一個名為mysql的數據庫。您需要將數據插入到mysql數據庫

  • 執行命令use mysql;
  • 最後,您可以通過發出命令來插入數據source *path timezone_posix.sql*

插入時區數據後,您可以通過發出以下查詢進行測試:

SELECT CONVERT_TZ('2018-07-02 14:46:46','utc','America/Los_Angeles')

如果結果不為空,你就成功了!!!

mysql_tzinfo_to_sql — 載入時區表:http ://dev.mysql.com/doc/refman/5.7/en/mysql-tzinfo-to-sql.html 這可能對您有所幫助

引用自:https://dba.stackexchange.com/questions/149492