sql >> Databasteknik >  >> RDS >> PostgreSQL

Kompilera PL/Proxy med PostgresPlus Advance Server 9.1

PostgresPlus Advance Server 9.1(PPAS) är EnterpriseDB-produkt, som kommer med företagsfunktioner som ytterligare med community PostgreSQL. De flesta av bidragsmodulerna (pgfoundry) kan anslutas till denna produkt med Stackbuilder. Men för närvarande är Pl/Proxy inte buntad eller nedladdningsbar med Stack-builder. Så här är hur du kan kompilera Pl/Proxy med PPAS 9.1.

1. Ladda ner Pl/Proxy.

wget http://pgfoundry.org/frs/download.php/3274/plproxy-2.4.tar.gz
tar -xvf plproxy-2.4.tar.gz
make PG_CONFIG=/opt/PostgresPlus/9.1AS/bin/pg_config
make intall PG_CONFIG=/opt/PostgresPlus/9.1AS/bin/pg_config

Note: Flex & Bison must be installed before compiling pl/proxy.

2. Efter lyckad konfiguration får du två filer, plproxy.so i $PGPATH/lib &plproxy–2.4.0.sql på $PGPATH/share/extention/ plats.
Kör .sql-filen som skapar call_handler &språk.

bash-4.1$ psql -p 5444 -U enterprisedb -d edb -f /opt/PostgresPlus/9.1AS/share/extension/plproxy--2.4.0.sql
CREATE FUNCTION
CREATE LANGUAGE
CREATE FUNCTION
CREATE FOREIGN DATA WRAPPER

Nu kan du se vilket språk som är installerat.

edb=# dL
List of languages
Name | Owner | Trusted
---------+--------------+---------
edbspl | enterprisedb | t
plpgsql | enterprisedb | t
plproxy | enterprisedb | f
(3 rows)

3. Låt oss testa exempelkoden med pl/proxy.

create table users(username text,blog text);
insert into users values('Raghav','raghavt.blogspot.com');

CREATE or replace FUNCTION get_user_blog(i_username text)
RETURNS SETOF text AS $$
CONNECT 'dbname=edb';
SELECT blog FROM users WHERE username = $1;
$$ LANGUAGE plproxy;

edb=# select * from get_user_blog('Raghav');
get_user_blog
----------------------------------
raghavt.blogspot.com
(1 rows)

Allt för att testa med pl/proxy på PPAS 9.1. Om du vill veta hur du ställer in pl/proxy, följ länkarna nedan.
http://www.depesz.com/2011/12/02/the-secret-ingredient-in-the-webscale-sauce/
http://kaiv.wordpress.com/2007/07/27/postgresql-cluster-partitioning-with-plproxy-part-i/


  1. SQLite Left Join

  2. Denormalisering:När, varför och hur

  3. 5 steg för att bygga en marknadsföringsdatabas

  4. INT vs Unique-Identifier för ID-fält i databasen