{"id":30280,"date":"2019-10-31T21:34:38","date_gmt":"2019-10-31T18:34:38","guid":{"rendered":"https:\/\/prohoster.info\/blog\/potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0\/"},"modified":"2019-10-31T21:34:38","modified_gmt":"2019-10-31T18:34:38","slug":"potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0","title":{"rendered":"Folyamatos \u00e1tkonvert\u00e1l\u00e1s Firebird 2.5 adatb\u00e1zisok ODS12 form\u00e1tumba (Firebird 3.0)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Minden Firebird verzi\u00f3nak megvan a saj\u00e1t adatb\u00e1zis-strukt\u00fara form\u00e1tuma \u2013 O(n)D(isk)S(tructure). A 2.5-\u00f6s verzi\u00f3ig a Firebird motor k\u00e9pes volt kor\u00e1bbi verzi\u00f3j\u00fa ODS-ekkel dolgozni, azaz a r\u00e9gi verzi\u00f3j\u00fa adatb\u00e1zisok megnyithat\u00f3ak voltak az \u00faj verzi\u00f3ban \u00e9s m\u0171k\u00f6dtek a kompatibilit\u00e1s m\u00f3dj\u00e1ban, de a Firebird 3.0 motor csak a saj\u00e1t 12.0 ODS verzi\u00f3val rendelkez\u0151 adatb\u00e1zisokkal m\u0171k\u00f6dik.<\/p>\n<p>A 3.0-ra val\u00f3 \u00e1tt\u00e9r\u00e9shez a 2.5-\u00f6s adatb\u00e1zist az \u00faj form\u00e1tumba sz\u00fcks\u00e9ges \u00e1tkonvert\u00e1lni a backup\/restoration folyamaton kereszt\u00fcl. Term\u00e9szetesen felt\u00e9telezz\u00fck, hogy az adatb\u00e1zis el\u0151k\u00e9sz\u00edt\u00e9se az \u00e1tkonvert\u00e1l\u00e1sra megt\u00f6rt\u00e9nt \u2013 azaz a metaadatokat \u00e9s a lek\u00e9rdez\u00e9seket a Firebird 3.0 kompatibilit\u00e1s\u00e1nak ellen\u0151rizt\u00e9k.<\/p>\n<p>Ha a standard megk\u00f6zel\u00edt\u00e9st k\u00f6vetj\u00fck, akkor b\u0151v\u00edt\u00e9st kell v\u00e9gezni a 2.5-\u00f6s verzi\u00f3n, majd telep\u00edteni a 3.0-t, \u00e9s v\u00e9grehajtani a helyre\u00e1ll\u00edt\u00e1st. Ez a folyamat elfogadhat\u00f3, ha elegend\u0151 id\u0151 \u00e1ll rendelkez\u00e9sre, de nagy adatb\u00e1zisok migr\u00e1l\u00e1sa vagy t\u00f6bb tucat adatb\u00e1zis egyidej\u0171 migr\u00e1l\u00e1sa eset\u00e9n, amikor az id\u0151 szoros, lehet\u0151s\u00e9g van a folyamatos \u00e1tkonvert\u00e1l\u00e1sra, ami 30-40%-kal gyorsabb. Hogyan lehet ezt megtenni (Windows \u00e9s Linux alatt), arr\u00f3l a tov\u00e1bbiakban olvashat.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nAz alapvet\u0151 \u00f6tlet az, hogy a sebess\u00e9g n\u00f6vel\u00e9se \u00e9rdek\u00e9ben egy cs\u0151vezet\u00e9ket haszn\u00e1lunk:<\/p>\n<pre><code class=\"plaintext\">gbak -b \u2026 adatb\u00e1zis25 stdout | gbak -c \u2026 stdin adatb\u00e1zis30<\/code><\/pre>\n<p>\nA 2.5-\u00f6s verzi\u00f3j\u00fa gbak line\u00e1ris form\u00e1tumban gener\u00e1lja a biztons\u00e1gi ment\u00e9st \u00e9s az stdout-ra ir\u00e1ny\u00edtja, amelyet azonnal \u00e1tv\u00e9ve a 3.0-s gbak a stdin-en kereszt\u00fcl l\u00e9trehozza az \u00faj adatb\u00e1zist.<\/p>\n<p>Ezt a cs\u0151vezet\u00e9ket felt\u00e9tlen\u00fcl helyi (f\u00e1jlszint\u0171) m\u00f3dszerrel kell megval\u00f3s\u00edtani, mivel a h\u00e1l\u00f3zati hozz\u00e1f\u00e9r\u00e9s (m\u00e9g localhoston kereszt\u00fcl is) jelent\u0151sen lelass\u00edtja a folyamatot.<\/p>\n<p>Az al\u00e1bbiakban a Windows \u00e9s Linux r\u00e9szleteit t\u00e1rgyaljuk.<\/p>\n<p><b>Windows<\/b><\/p>\n<p>Windows eset\u00e9n a legk\u00f6nnyebb teljesen \u00f6n\u00e1ll\u00f3 Firebird buildet k\u00e9sz\u00edteni. Ehhez az al\u00e1bbiakat vessz\u00fck: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/FirebirdSQL\/firebird\/releases\/download\/R2_5_8\/Firebird-2.5.8.27089-0_x64_embed.zip\">embed-arch\u00edvum Firebird 2.5<\/a><\/noindex>, \u00e1tnevezz\u00fck a fbembedded.dll-t fbclient.dll-re, hozz\u00e1adjuk a \"szok\u00e1sos\" 2.5-\u00f6s arch\u00edvumb\u00f3l a gbak.exe seg\u00e9dprogramot \u00e9s (nem k\u00f6telez\u0151) \u2013 az isql.exe-t. <\/p>\n<p>A Firebird 3.0 egy <noindex><a rel=\"nofollow\" href=\"https:\/\/firebirdsql.org\/en\/firebird-3-0\/\">egys\u00e9ges buildet<\/a><\/noindex> \u00e9s nem ig\u00e9nyel semmif\u00e9le ut\u00f3munk\u00e1t.<\/p>\n<p>A legminim\u00e1lisabb v\u00e1ltozat (amely nem ig\u00e9nyel VS2008\/VS2010 fut\u00e1si k\u00f6nyvt\u00e1rakat a c\u00e9lrendszeren) a k\u00f6vetkez\u0151 f\u00e1jlokat tartalmazza:<\/p>\n<pre><code class=\"plaintext\">25\/gbak.exe\n25\/fbclient.dll\n25\/firebird.conf\n25\/firebird.log\n25\/firebird.msg\n25\/ib_util.dll\n25\/icudt30.dll\n25\/icuin30.dll\n25\/icuuc30.dll\n25\/Microsoft.VC80.CRT.manifest\n25\/msvcp80.dll\n25\/msvcr80.dll\n\n30\/fbclient.dll\n30\/firebird.conf\n30\/firebird.msg\n30\/gbak.exe\n30\/ib_util.dll\n30\/icudt52.dll\n30\/icudt52l.dat\n30\/icuin52.dll\n30\/icuuc52.dll\n30\/msvcp100.dll\n30\/msvcr100.dll\n30\/intl\/fbintl.conf\n30\/intl\/fbintl.dll\n30\/plugins\/engine12.dll<\/code><\/pre>\n<p>\nEgy tapasztalt adminisztr\u00e1tor \u00e9szreveheti, hogy a 2.5-\u00f6s verzi\u00f3ban nincs benne az intl\/fbintl.dll \u00e9s az intl\/fbintl.conf f\u00e1jl. Ez val\u00f3ban \u00edgy van, mivel a gbak nem haszn\u00e1lja a kapcsolati karakterk\u00e9szletet, \u00e9s nem konvert\u00e1l adatokat a karakterk\u00e9szletek k\u00f6z\u00f6tt, de a Firebird 3.0 \"fogad\u00f3\" oldal\u00e1n ezek a f\u00e1jlok sz\u00fcks\u00e9gesek az indexek l\u00e9trehoz\u00e1sakor.<\/p>\n<p>A firebird.conf f\u00e1jlban aj\u00e1nlott a Firebird 3.0-n\u00e1l hozz\u00e1adni:<\/p>\n<pre><code class=\"plaintext\">MaxUnflushedWrites = -1\nMaxUnflushedWriteTime = -1<\/code><\/pre>\n<p>\nEzen k\u00edv\u00fcl c\u00e9lszer\u0171 megadni a k\u00fcl\u00f6nb\u00f6z\u0151 IpcName \u00e9rt\u00e9keket a 2.5 \u00e9s 3.0 sz\u00e1m\u00e1ra is. <\/p>\n<p>A firebird.conf t\u00f6bbi param\u00e9ter\u00e9nek \u00e9rt\u00e9keinek meghat\u00e1roz\u00e1sakor arra a egyszer\u0171 megfontol\u00e1sra alapozunk, hogy az adatm\u00e1sol\u00e1si folyamat sor\u00e1n az egyik folyamat a gbak 2.5-\u00f6s verzi\u00f3j\u00e1t, a m\u00e1sik pedig a 3.0-\u00e1s verzi\u00f3t futtatja, majd a 2.5 befejezi a munk\u00e1j\u00e1t, \u00e9s a 3.0 elkezdi az indexek \u00e9p\u00edt\u00e9s\u00e9t.<\/p>\n<p>Az index\u00e9p\u00edt\u00e9si folyamat felgyors\u00edt\u00e1sa \u00e9rdek\u00e9ben a 3.0-ban aj\u00e1nlott a TempCacheLimit param\u00e9ter m\u00e9ret\u00e9nek n\u00f6vel\u00e9se k\u00f6r\u00fclbel\u00fcl a RAM ~40%-\u00e1ra (ha ez dedik\u00e1lt szerver, term\u00e9szetesen).<\/p>\n<p>P\u00e9ld\u00e1ul, ha a szerver 16 GB RAM-mal rendelkezik, akkor be\u00e1ll\u00edthat\u00f3 <\/p>\n<pre><code class=\"plaintext\">TempCacheLimit=6G<\/code><\/pre>\n<p>\n<i>Term\u00e9szetesen ez az \u00e9rt\u00e9k csak 64 bites Firebird 3 eset\u00e9n \u00e1ll\u00edthat\u00f3 be, mivel b\u00e1rmely 32 bites folyamat nem tud t\u00f6bb mint 2 gigabyte mem\u00f3ri\u00e1t lefoglalni.<\/i><\/p>\n<p>A 2.5-\u00f6s verzi\u00f3n\u00e1l ezt a param\u00e9tert nem kell m\u00f3dos\u00edtani \u2013 az am\u00fagy sem lehet t\u00f6bb 2 gigabyte-n\u00e1l, \u00e9s a ment\u00e9s sebess\u00e9g\u00e9re sem gyakorol hat\u00e1st.<\/p>\n<p>Az oper\u00e1ci\u00f3 v\u00e9grehajt\u00e1sa el\u0151tt ellen\u0151rizni kell, hogy az adatb\u00e1zis fejl\u00e9c\u00e9ben a lapk\u00e9szlet 0-ra van-e \u00e1ll\u00edtva (parancs: <code>gstat -h adatbazisnev<\/code>, n\u00e9zze meg az Oldal pufferek sor\u00e1t). <\/p>\n<p>Ha a gyors\u00edt\u00f3t\u00e1r egy\u00e9rtelm\u0171en meg van adva az adatb\u00e1zis fejl\u00e9c\u00e9ben, akkor fel\u00fcl\u00edrja a firebird.conf (\u00e9s a databases.conf a 3.0-ban) \u00e9rt\u00e9keit, \u00e9s a nem megfelel\u0151en nagy \u00e9rt\u00e9kek eset\u00e9n t\u00falzott mem\u00f3riafelhaszn\u00e1l\u00e1shoz \u00e9s swap-ra l\u00e9p\u00e9shez vezethet.<\/p>\n<p>Ezut\u00e1n m\u00e1soljuk a f\u00e1jlokat a c\u00e9lrendszerre. <\/p>\n<p>A konverzi\u00f3t a Firebird 2.5-\u00f6s verzi\u00f3 \"rendszerszolg\u00e1ltat\u00e1s\" le\u00e1ll\u00edt\u00e1sa ut\u00e1n hajtjuk v\u00e9gre, a parancssorban helyi adminisztr\u00e1tori jogosults\u00e1gokkal (p\u00e9lda):<\/p>\n<pre><code class=\"plaintext\">set ISC_USER=tulajdonos\n\"25\/gbak\" -z -b -g -v -st t -y 25.log baza25 stdout|^\n\"30\/gbak\" -z -c -v -st t -y 30.log stdin baza30<\/code><\/pre>\n<p>\nEbben a p\u00e9ld\u00e1ban a \"k\u00f6zvetlen ferde\" id\u00e9z\u0151jelek k\u00f6z\u00f6tt van (megengedett \"unix-style\"), \u00e9s a \"kalap\" (karakter \"^\") a sort\u00f6r\u00e9s jel\u00e9t escaping keresi, ami k\u00e9nyelmes a hossz\u00fa parancsok be\u00edr\u00e1sakor. A -st (atus) opci\u00f3 a Firebird 2.5.8-ban jelent meg, \u00e9s lehet\u0151v\u00e9 teszi, hogy a gbak folyamat idej\u00e9r\u0151l adatokat r\u00f6gz\u00edts\u00fcnk a protokollban (r\u00e9szletek a dokument\u00e1ci\u00f3ban).<\/p>\n<p><b>Linux<\/b><\/p>\n<p>A Linux Firebird 3 f\u00fcgg a tommath k\u00f6nyvt\u00e1rt\u00f3l. A CentOS (RHEL) eset\u00e9ben ez a k\u00f6nyvt\u00e1r az epel-repozit\u00f3riumban tal\u00e1lhat\u00f3, az Ubuntu (Debian) rendszeren pedig a rendszerben.<\/p>\n<p>A CentOS system requires first connecting to the EPEL repository and then proceeding to <\/p>\n<pre><code class=\"plaintext\">yum install libtommath<\/code><\/pre>\n<p>\nOn Ubuntu, no additional repositories need to be connected, but Ubuntu 16 and Ubuntu 18 install different versions of the packages \u2013 libtommath0 and libtommath1, respectively.<\/p>\n<p>Firebird 3.0 looks for tommath.so.0 and additionally, for Ubuntu 18, it is necessary to create a symlink from tommath.so.0 to tommath.so.1. To do this, you first need to find tommath.so.1. <\/p>\n<p>The sought path in Ubuntu is <code>\/usr\/lib\/x86_64-linux-gnu\/<\/code>, but it may be different in other Debian-based distributions.<\/p>\n<p>The second issue is that until Firebird 3.0.1, there was no simple way to install two different server versions. The option of 'compiling from sources with the needed prefix' is not considered due to its relative labor intensity.<\/p>\n<p>For Firebird 3.0.2 and above, there is a <noindex><a rel=\"nofollow\" href=\"http:\/\/tracker.firebirdsql.org\/browse\/CORE-5204\">build with \u2013enable-binreloc<\/a><\/noindex> and a separate installer option (-path path).<\/p>\n<p>Assuming that the tommath library and, if necessary, the symlink for tommath.so.0 have been added to the system, you can install the current (as of this article's writing) Firebird 3.0.4 distribution to, for example, \/opt\/fb3:<\/p>\n<pre><code class=\"plaintext\">.\/install.sh -path \/opt\/fb3<\/code><\/pre>\n<p>\nAfter this, you can stop the Firebird system service and initiate the streaming conversion. <\/p>\n<p><i>When stopping Firebird, it must be noted that Firebird 2.5 processes in Classic mode are typically launched by xinetd \u2013 therefore, either the firebird service for xinetd must be disabled, or xinetd must be completely stopped.<\/i><\/p>\n<p>In firebird.conf for 3.0 on Linux, there is no need to set MaxUnflushed parameters (they only work on Windows) or to change settings for Firebird 2.5. <\/p>\n<p>In Linux, local (file) access for Firebird 2.5 is not equivalent to the embedded version under Windows \u2013 server 2.5 will run in the gbak process (without the network part), but access rights will be checked against the user database, meaning that not only a login is required but also a password: <\/p>\n<pre><code class=\"plaintext\">export ISC_USER=username ISC_PASSWORD=password\n\/opt\/firebird\/bin\/gbak -b \u2026 database25 stdout\n|\/opt\/fb3\/bin\/gbak -c \u2026 stdin database30<\/code><\/pre>\n<p>\nAfter a successful conversion, you must first remove the 'additional' Firebird 3.0, then the 'main' Firebird 2.5, and only after that perform a clean installation of Firebird 2.5 \u2014 it is best to do this from the standard tar.gz installer rather than through repositories, as the version in repositories may be outdated.<\/p>\n<p>Also, after restoring the database on Linux and reinstalling, check that the new database has firebird as its user owner.<\/p>\n<p>If this is not the case, it will need to be corrected<\/p>\n<pre><code class=\"plaintext\">chown firebird.firebird database<\/code><\/pre>\n<p>\n<b>Result<\/b><\/p>\n<p>A folytonos konvert\u00e1l\u00e1snak nemcsak az az el\u0151nye, hogy id\u0151t \u00e9s lemezhelyet takar\u00edt meg, hanem az is, hogy az alapadatok \u00e1talak\u00edt\u00e1sa a megl\u00e9v\u0151 Firebird 2.5 elt\u00e1vol\u00edt\u00e1sa n\u00e9lk\u00fcl t\u00f6rt\u00e9nik, ami jelent\u0151sen megk\u00f6nny\u00edti a vissza\u00e1ll\u00edt\u00e1st sikertelen konverzi\u00f3 eset\u00e9n (t\u00f6bbnyire a helyhi\u00e1ny vagy a v\u00e1ratlan \u00fajraind\u00edt\u00e1s miatt a migr\u00e1ci\u00f3s folyamat sor\u00e1n).<\/p>\n<p>Az id\u0151megtakar\u00edt\u00e1s azzal van \u00f6sszef\u00fcgg\u00e9sben, hogy a \u201eklasszikus\u201d konverzi\u00f3 a \u201ebiztons\u00e1gi ment\u00e9s ideje\u201d plusz a \u201ehelyre\u00e1ll\u00edt\u00e1si id\u0151\u201d. A helyre\u00e1ll\u00edt\u00e1s k\u00e9t r\u00e9szb\u0151l \u00e1ll: az adatok olvas\u00e1s\u00e1b\u00f3l a biztons\u00e1gi ment\u00e9s f\u00e1jlb\u00f3l \u00e9s az indexek fel\u00e9p\u00edt\u00e9s\u00e9b\u0151l.<\/p>\n<p>A folytonos konvert\u00e1l\u00e1sn\u00e1l az \u00f6sszes\u00edtett id\u0151 \u201ebiztons\u00e1gi ment\u00e9s ideje plusz \u00f6t-t\u00edz sz\u00e1zal\u00e9k\u201d \u00e9s \u201eindexek \u00e9p\u00edt\u00e9si ideje\u201d \u00f6sszegek\u00e9nt alakul.<\/p>\n<p>A konkr\u00e9t eredm\u00e9nyek az adatb\u00e1zis fel\u00e9p\u00edt\u00e9s\u00e9t\u0151l f\u00fcggenek, de \u00e1tlagosan a helyre\u00e1ll\u00edt\u00e1si id\u0151 k\u00f6r\u00fclbel\u00fcl dupl\u00e1ja a biztons\u00e1gi ment\u00e9s idej\u00e9nek. Ez\u00e9rt, ha a biztons\u00e1gi ment\u00e9s idej\u00e9t egys\u00e9gnek tekintj\u00fck, akkor a \u201eklasszikus konverzi\u00f3\u201d h\u00e1rom egys\u00e9gnyi id\u0151t vesz ig\u00e9nybe, a folytonos konverzi\u00f3 pedig k\u00e9t egys\u00e9get. A TempCacheLimit n\u00f6vel\u00e9se tov\u00e1bbi id\u0151megtakar\u00edt\u00e1st seg\u00edthet el\u00e9rni.<\/p>\n<p>\u00d6sszess\u00e9g\u00e9ben a folytonos konvert\u00e1l\u00e1s a gyakorlatban 30-40%-os id\u0151megtakar\u00edt\u00e1st eredm\u00e9nyez a soros biztons\u00e1gi ment\u00e9s \u00e9s helyre\u00e1ll\u00edt\u00e1s sor\u00e1n.<\/p>\n<p><b>K\u00e9rd\u00e9se van?<\/b><\/p>\n<p>K\u00e9rj\u00fck, minden k\u00e9rd\u00e9st \u00edrjon a megjegyz\u00e9sekbe, vagy k\u00fcldje el a m\u00f3dszer szerz\u0151j\u00e9nek \u00e9s a cikk t\u00e1rsszerz\u0151j\u00e9nek, Szergej Szidirovnak, aki az \u201eiBase\u201d v\u00e1llalat vezet\u0151 rendszerm\u00e9rn\u00f6ke, a k\u00f6vetkez\u0151 c\u00edmre: bs at ibase ru.<\/p>\n<p class=\"for_users_only_msg\">Csak a regisztr\u00e1lt felhaszn\u00e1l\u00f3k vehetnek r\u00e9szt a szavaz\u00e1son. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/auth\/login\/\">K\u00e9rem, jelentkezzen be.<\/a><\/noindex>, k\u00e9rem.<\/p>\n<h2 class=\"default-block__polling-title\">Melyik Firebird verzi\u00f3t haszn\u00e1lja?<\/h2>\n<ul class=\"content-list content-list_polling\">\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Firebird 3.x<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Firebird 2.5<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Firebird 2.1<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Firebird 2.0, 1.5 vagy 1.0<\/p>\n<\/li>\n<\/ul>\n<p>    16 felhaszn\u00e1l\u00f3 szavazott. 1 felhaszn\u00e1l\u00f3 nem szavazott.<br \/>\n<br \/>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/445204\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0423 \u043a\u0430\u0436\u0434\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Firebird \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u2013 O(n)D(isk)S(tructure). \u0414\u043e \u0432\u0435\u0440\u0441\u0438\u0438 2.5 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0434\u0432\u0438\u0436\u043e\u043a Firebird \u043c\u043e\u0433 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 ODS \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439, \u0442\u043e \u0435\u0441\u0442\u044c \u0431\u0430\u0437\u044b \u043e\u0442 \u0441\u0442\u0430\u0440\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438, \u043d\u043e \u0434\u0432\u0438\u0436\u043e\u043a Firebird 3.0 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u0411\u0414 \u0432 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 ODS \u0432\u0435\u0440\u0441\u0438\u0438 12.0. \u0427\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u0439\u0442\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-30280","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0423 \u043a\u0430\u0436\u0434\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Firebird \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u2013 O(n)D(isk)S(tructure).\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043e\u0442\u043e\u0447\u043d\u0430\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0430\u0446\u0438\u044f \u0431\u0430\u0437 Firebird 2.5 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442 ODS12 (Firebird 3.0) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0423 \u043a\u0430\u0436\u0434\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Firebird \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u2013 O(n)D(isk)S(tructure).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:34:38+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:34:38+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Folytonos konverzi\u00f3 Firebird 2.5-b\u0151l ODS12 (Firebird 3.0) form\u00e1tumba | ProHoster","description":"Minden Firebird verzi\u00f3nak saj\u00e1t lemezstrukt\u00fara-form\u00e1tum verzi\u00f3ja van \u2013 O(n)D(isk)S(tructure).","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043e\u0442\u043e\u0447\u043d\u0430\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0430\u0446\u0438\u044f \u0431\u0430\u0437 Firebird 2.5 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442 ODS12 (Firebird 3.0) | ProHoster","og:description":"\u0423 \u043a\u0430\u0436\u0434\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Firebird \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u2013 O(n)D(isk)S(tructure).","og:url":"https:\/\/prohoster.info\/hu\/blog\/potochnaya-konvertatsiya-baz-firebird-2-5-v-format-ods12-firebird-3-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:34:38+00:00","article:modified_time":"2019-10-31T18:34:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30280","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 00:29:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:37:28","updated":"2026-01-21 00:29:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/30280","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=30280"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/30280\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=30280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=30280"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=30280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}