<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Проблема миграции БД с MySQL в PostgreSQL]]></title><description><![CDATA[<p dir="auto">Добрый день,<br />
Столкнулся с проблемой не выполняется миграция данных с базы MySQL в PostgreSQL выдает ошибку (полный лог во вложении):</p>
<pre><code>Migrating table nodes
SQL query failed (22P02 ОШИБКА:  неверное значение для целого числа: ""):
INSERT INTO nodes (id,primary_name,primary_ip,node_flags,runtime_flags,snmp_version,snmp_port,community,usm_auth_password,usm_priv_password,usm_methods,snmp_oid,auth_method,secret,agent_port,status_poll_type,agent_version,platform_name,poller_node_id,zone_guid,proxy_node,snmp_proxy,icmp_proxy,required_polls,uname,use_ifxtable,snmp_sys_name,snmp_sys_contact,snmp_sys_location,bridge_base_addr,down_since,boot_time,driver_name,rack_image_front,rack_position,rack_height,rack_id,agent_cache_mode,last_agent_comm_time,syslog_msg_count,snmp_trap_count,chassis_id,node_type,node_subtype,ssh_login,ssh_password,ssh_proxy,port_rows,port_numbering_scheme,agent_comp_mode,tunnel_id,lldp_id,fail_time_snmp,fail_time_agent,rack_orientation,rack_image_rear) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)

...

Database migration failed.
</code></pre>
<p dir="auto">Версии программ:</p>
<pre><code>NetXMS Database Manager Version 2.2.4 Build 9506 (2.2.4)

mysql  Ver 14.14 Distrib 5.5.53, for debian-linux-gnu (x86_64) using readline 6.3

psql (PostgreSQL) 10.3 (Debian 10.3-1.pgdg80+1)
</code></pre>
<p dir="auto">Миграцию выполняю по инструкции <a href="https://wiki.netxms.org/wiki/How_to_migrate_to_another_database" rel="nofollow ugc">https://wiki.netxms.org/wiki/How_to_migrate_to_another_database</a></p>
<p dir="auto">Кто что посоветует?</p>
<hr />
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003998-nxdbmgr.log">nxdbmgr.log</a></p>
]]></description><link>https://forum.netxms.org/topic/5536/проблема-миграции-бд-с-mysql-в-postgresql</link><generator>RSS for Node</generator><lastBuildDate>Fri, 13 Nov 2026 16:17:22 GMT</lastBuildDate><atom:link href="https://forum.netxms.org/topic/5536.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 12 Apr 2018 07:35:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Проблема миграции БД с MySQL в PostgreSQL on Thu, 12 Apr 2018 08:21:16 GMT]]></title><description><![CDATA[<p dir="auto">Разобрался в причине ошибки</p>
<p dir="auto">Некоторые узлы в таблице nodes в полях port_rows, port_numbering_scheme имеют значение NULL, но как я в момент миграции для этих полей значения заменяются на "" на что и ругается затем PostgreSQL так как "" - это строка, а указанные поля типа число</p>
<p dir="auto">в моем случае помогло проставить в MySQL  вместо null значение например -1:</p>
<pre><code>update netxms.nodes
set port_numbering_scheme = -1
where
port_numbering_scheme is null;

update netxms.nodes
set port_rows = -1
where
port_rows is null;
</code></pre>
<p dir="auto">Выполнил</p>
<pre><code>nxdbmgr migrate /etc/netxmsd.conf.old
</code></pre>
<p dir="auto">а затем в PostgreSQL вернул null обратно:</p>
<pre><code>update nodes
set port_numbering_scheme = null
where
port_numbering_scheme = -1;

update nodes
set port_rows = null
where
port_rows = -1;
</code></pre>
<p dir="auto">Просьба к разработчика: исправьте данный баг</p>
]]></description><link>https://forum.netxms.org/post/24155</link><guid isPermaLink="true">https://forum.netxms.org/post/24155</guid><dc:creator><![CDATA[tusov]]></dc:creator><pubDate>Thu, 12 Apr 2018 08:21:16 GMT</pubDate></item></channel></rss>