Thread: Postgre Architecture
<br /><br /> you may check<br /><ul><li><br /><li><a href="http://developer.postgresql.org/docs/pgsql/src/tools/backend/index.html">Flowchartof the PostgreSQL backend</a><li><ahref="http://developer.postgresql.org/pdf/internalpics.pdf">Database Internals Presentation</a><li><a href="http://developer.postgresql.org/osdn.php">TheImplementation of PostgreSQL</a><br /> in the URL below<br /><br /><aclass="moz-txt-link-freetext" href="http://developer.postgresql.org/">http://developer.postgresql.org/</a><br /><br /><br/> Regds<br /> Mallah.<br /><br /> Cláudia Morgado wrote:<br /><blockquote cite="mid00d701c3a84f$4965d8c0$15011aac@widesoft.com.br"type="cite"><style></style><div><font face="Arial" size="2"><strong><em>Hello!</em></strong></font></div><div> </div><div><fontface="Arial" size="2">We working currently withthe Oracle and we would like to know if postgresql has some similar components as the concept of instance, buffer databasecache, Redo log buffer, datafiles, background process, etc. </font></div><div> </div><div><font face="Arial" size="2">How postgreworks? It works in memory?</font></div><div> </div><div><font face="Arial" size="2">There is some figurethat ilustrates your architecture?</font></div><div> </div><div><font face="Arial" size="2">regards,</font></div><div><fontface="Arial" size="2">Carla Mello e Cláudia Morgado.</font></div><div> </div></blockquote><br/></ul>
Cláudia Morgado cmorgado@widesoft.com.br
Banco de Dados
Fone: (19) 3451-6300 www.widesoft.com.br
-----------------------------------------------------------------------------------------
-----Original Message-----
From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Cláudia Morgado
Sent: Monday, January 12, 2004 8:12 PM
To: pgsql-general@postgresql.org
Subject: [GENERAL] Pass data of database Oracle to PostgreSQLHello!!Somebody could help me to pass the data that are of a database Oracle 8i for my new database Postgre 7.3.4 (linux).Regards,Cláudia-----------------------------------------------------------------------------------------
Cláudia Morgado cmorgado@widesoft.com.br
Banco de Dados
Fone: (19) 3451-6300 www.widesoft.com.br
-----------------------------------------------------------------------------------------
I have done a successuff schema and data migration from Oracle 8i to PostgreSQL 7.4 by using the contrib : postgresql-7.4/contrib/Oracle/ora2pg
Regards,
Thierry
Cláudia Morgado wrote:
Hello!!Somebody could help me to pass the data that are of a database Oracle 8i for my new database Postgre 7.3.4 (linux).Regards,Cláudia-----------------------------------------------------------------------------------------
Cláudia Morgado cmorgado@widesoft.com.br
Banco de Dados
Fone: (19) 3451-6300 www.widesoft.com.br
-----------------------------------------------------------------------------------------
Attachment
I'm not sure to well understand your problem.
But, Ora2pg need 3 modules :
- Two of them : DBI-1.38 and DBD-Pg-1.22 have to be comile and install from your Postgres environnement. For example /home/postgres.
- And DBD-Oracle-1.14 has to be compile and install in your Local Oracle environment. For example : /home/oracle. With the Oracle Shell variables set :
$ORACLE_BASE
$ORACLE_HOME
Futher more, the script ora2pg need in the first lines the setting of your local host ORACLE_HOME, for example :
$ENV[ORACLE_HOME]='/home/oracle/product/9.2.0'
That means that if your Postgres Database is on serverA and you want to migrate an Oracle database form serverB, you have to have an Oracle client on ServerA and set the Perl variables as these :
my $dbsrc = 'dbi:Oracle:host=serverB;sid=advisor2; port=1521';
my $dbuser = 'system';
my $dbpswd = 'syspasswd'
If you don't have an Oracle Client Licence on serverA. It is more complex. I think in that case, that a better idea is to install Postgres on ServerB, do the migration, dump the Postgres migrate DB, and restore the dump on ServerA.
One more thing, I have noted that a same DB takes at least twice disk space on Postgres than on Oracle. I haven't still, dicovered why.
Thierry Missimilly
Cláudia Morgado wrote:
Hi , We still don´t obtain to user the Ora2pg.pl. :( In the installation of the requirement ones of the Ora2pg.pl a problem in the compilation of module Perl DBD:Oracle occurred.It sees the error below:" The ORACLE_HOME environment variable must be set.
It must be set to hold the path to an Oracle installation directory
on this machine (or a machine with a compatible architecture).
See the README.clients file for more information.
ABORTED!" The migration that we are making is of the database Oracle 8i for PostgreSQL 7.4.1, being that the database are installed in different servers. How we can continue in this installation? regards,Carla e Cláudia----- Original Message -----From: Thierry MissimillyTo: Cláudia MorgadoSent: Monday, January 19, 2004 8:20 AMSubject: Re: [GENERAL] Pass data of database Oracle to PostgreSQLHi Claudia,I have done a successuff schema and data migration from Oracle 8i to PostgreSQL 7.4 by using the contrib : postgresql-7.4/contrib/Oracle/ora2pg
Regards,
Thierry
Cláudia Morgado wrote:
Hello!!Somebody could help me to pass the data that are of a database Oracle 8i for my new database Postgre 7.3.4 (linux).Regards,Cláudia-----------------------------------------------------------------------------------------
Cláudia Morgado cmorgado@widesoft.com.br
Banco de Dados
Fone: (19) 3451-6300 www.widesoft.com.br
-----------------------------------------------------------------------------------------
Attachment
Hello!I need to execute a dynamic query and capture your result in a integer variable.I´m using the statement "EXECUTE string", but I don´t obtain to capture the result of dynamic query.See the example:======================================================create or replace function f_population_check() returns bigint as
'
declare
v_tot bigint;
v_query varchar(4000);
v_count integer;
r record;
begin
v_tot:= 0;
for r in select * from pg_tables loop
v_count:= 0;v_query := ''select count(*) from '' || r.tablename;
v_count:= EXECUTE v_query;
if v_count = 0 then
RAISE NOTICE ''Empty table % '',r.tablename;
end if;
v_tot:= v_tot + 1;
end loop;
return v_tot;
end;
'
language 'plpgsql';======================================================ERROR: parse error at or near "$1" at character 18
CONTEXT: PL/pgSQL function "f_population_check" line 11 at assignment======================================================Somebody could help me?Thanks, Carla Mello.