1. पीएल/प्रॉक्सी डाउनलोड करें।
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. सक्सेसफुल कॉन्फ़िगरेशन के बाद, आपको दो फाइलें मिलती हैं, plproxy.so $PGPATH/lib और plproxy–2.4.0.sql में $PGPATH/share/extension/ स्थान में।
.sql फ़ाइल निष्पादित करें जो call_handler और भाषा बनाती है।
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
अब आप स्थापित भाषा देख सकते हैं।
edb=# dL
List of languages
Name | Owner | Trusted
---------+--------------+---------
edbspl | enterprisedb | t
plpgsql | enterprisedb | t
plproxy | enterprisedb | f
(3 rows)
3. आइए 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)
PPAS 9.1 पर pl/proxy के साथ परीक्षण के लिए पूरी तरह तैयार है। यदि आप जानना चाहते हैं कि pl/proxy कैसे सेटअप करें, तो नीचे दिए गए लिंक का अनुसरण करें।
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/