如果目标系统具有时区字符串,请在运行 DIPMIG 脚本之前删除该字符串。时区字符串在文本文件 tdlocaledef.txt 中定义,该文件为数据库系统定义特定于区域设置的信息,例如货币和数字单位、星期几和月份的名称以及不同数据类型的缺省格式。tdlocaledef.txt 文件由 Teradata Locale Definition 实用程序编译,以便在数据库系统上生效。有关 Teradata Locale Definition 实用程序的详细信息,请参阅《Teradata Vantage™ - 数据库实用程序, B035-1102》。
- 在目标系统上,找到 tdlocaledef.txt 文件的目录,然后更改为此目录。例如:
# locate tdlocaledef.txt /opt/teradata/tdat/tdbms/XX.XX.XX.XX/etc/tdlocaledef.txt # cd /opt/teradata/tdat/tdbms/XX.XX.XX.XX/etc/
- 保存一份当前tdlocaledef.txt文件的副本。例如:
# cp tdlocaledef.txt tdlocaledef.txt.orig
- 使用文本编辑器编辑 tdlocaledef.txt,然后删除 TimeZoneString 的值,只留下引号。例如,将如下所示的值:
TimeZoneString {"America Pacific"; "-8"; "0"; "2"; "4"; "4"; "1"; "0"; "0"; "02:00:00"; "3"; "10"; "0"; "0"; "-1"; "02:00:00"; "1987"; "2006"; "-8"; "0"; "-7"; "0"; "4"; "3"; "8"; "0"; "0"; "02:00:00"; "4"; "11"; "1"; "0"; "0"; "02:00:00";"2007"; "9999"; "-8"; "0"; "-7"; "0"}
更改为:TimeZoneString {""}
保存修改后的 tdlocaledef.txt 文件。 - 运行 tdlocaledef 实用程序以编译 tdlocaledef.txt 文件。
# /usr/tdbms/bin/tdlocaledef -input tdlocaledef.txt -output new
- 运行 tpareset 以重新启动数据库并使新的 tdlocaledef 设置生效,从而删除旧时区字符串:
# tpareset -f Removed Time Zone String
- 运行 DBS Control 实用程序,并显示“常规”字段以确认时区字符串已删除。
# dbscontrol Enter a command, HELP, or QUIT: di gen
确认字段 18 的值显示为 Not Set。