উবুন্টু 12.04 এ পোস্টজিআইএস এবং টাইগার ডেটা ইনস্টল করুন


9

উগুন্টুতে জাতীয় টাইগার ডেটা পোস্টগ্রিজ ইনস্টল করার জন্য এবং জাতীয় টাইগার ডেটা লোড করার জন্য কেউ কি ইডিয়টদের গলিত গাইডকে সংক্ষেপে লিখতে পারেন? আমি http://wiki.bitnami.com/@api/deki/pages/302/pdf নামে কয়েকটি গাইড চেষ্টা করেছি , তবে আমার খুব ভাগ্য নেই। আমি এই প্রশ্নের মুক্ত সমাপ্ত প্রকৃতির জন্য ক্ষমা চাইছি।


আপনি পোস্টজিআইএস এর কোন সংস্করণটি চালাচ্ছেন? এটি কি 12.04 এর সাথে প্যাকেজযুক্ত সংস্করণ বা আপনি আপগ্রেড করেছেন? যদি আপনি পারেন তবে সর্বশেষতম পোস্টজিআইএস চালাতে চান, ২.১.১। সেই সংস্করণটি নিয়ে আসা টিআইজিআর জিওকডারটি পোস্টজিআইএস ২.৫ সহ যে সংস্করণটি কাজ করে তার চেয়ে অনেক ভাল।
আরেওভার

আমি প্রকৃতপক্ষে ব্যবহার করছি 2.1.1। আমার কাছে প্রয়োজনীয় সমস্ত এক্সটেনশন সক্ষম (ফাজিস্ট্রমেটচ, পোস্টগিজ, পোস্টজি_টিজার_জোকোডার, পোস্টগ্রিস_টপোলজি) এবং বাঘের স্কিমা রয়েছে। এখন, আমার কেবল জাতীয় আদমশুমারির ডেটা আপলোড করা দরকার।
স্ট্যাট_নোভাইস

উত্তর:


12

যেহেতু আপনার পোস্টজিআইএস ২.১.১ রয়েছে আপনি গেম থেকে এগিয়ে। আপনি উইজেট ইনস্টল করেছেন তা নিশ্চিত করুন, এটি সেন্সাস এফটিপি সাইট থেকে ডেটা ডাউনলোড করবে।

এটি দিয়ে একটি গিজডাটা ডিরেক্টরি তৈরি করুন:

sudo mkdir /gisdata

/ গিসডাতার মালিকানা এবং গোষ্ঠী পরিবর্তন করতে chown এবং chgrp কমান্ডগুলি ব্যবহার করুন যাতে আপনার সাধারণ ব্যবহারকারী / gisdata পড়তে এবং লিখতে পারে।

পিএসকিএল শুরু করুন এবং আপনার ডাটাবেসে সংযুক্ত করুন। পিএসকিএল একবার ব্যবহার করুন

\a

এবং

\t

যাতে ক্যোয়ারির ফলাফলগুলি সঠিকভাবে ফর্ম্যাট হয়।

আমি এই অংশটি প্রথম দিকে ভুলে গেছি! আপনি লোডার স্ক্রিপ্ট ব্যবহার করার আগে আপনাকে কিছু ঘর পরিষ্কার করতে হবে। প্রথম জিনিসটি আপনার অনুসন্ধানের পথে বাঘের স্কিমা রয়েছে তা নিশ্চিত করা । এরপরে টাইগার.লোডার_প্ল্যাটফর্ম এবং টাইগার.লোডার_ভেরিয়েবলগুলিতে মানগুলি পরীক্ষা করুন। এই দুটি টেবিলগুলি আপনার ব্যবহারকারী নাম এবং পাসওয়ার্ডের মতো লোডার স্ক্রিপ্টের জন্য ভেরিয়েবলগুলি নিয়ন্ত্রণ করে। আমি সাধারণত এগুলিকে পিজিএডমিনে সম্পাদনা করি। এরপরে আপনাকে এমন একটি স্ক্রিপ্ট চালাতে হবে যা লুকোচটি টেবিলগুলি এবং পটভূমির ধার্মিকতার অন্যান্য বিটগুলি জিওকোডারের প্রয়োজন হবে pop প্রথমে একটি আউটপুট ফাইল সেট করুন:

\o nation_generator.sh

তারপরে চালান:

SELECT loader_generate_nation_script('sh'); 

তারপরে পিএসকিএল থেকে প্রস্থান করুন এবং ফাইলটি চালান:

sh ./nation_generator.sh

তারপরে পিএসকিএল-এ ফিরে এসে টাইপ করুন:

\o loader_script.sh

ক্যোয়ারির ফলাফলগুলি লোডার_স্ক্রিপ্ট.এসকিএল নামে একটি পাঠ্যপুস্তকে আউটপুট করতে। তারপরে যে ফাংশনটি লোডার স্ক্রিপ্ট উৎপন্ন করে:

SELECT loader_generate_script(ARRAY['DC','RI'], 'sh');

এটি এমন কোয়েরি যার আউটপুটটি লোডার_স্রিপ্ট.সকিএল-তে পুনঃনির্দেশিত হবে। আপনি যে রাজ্যগুলি ডাউনলোড করতে চান তার দুটি চিঠি সংক্ষেপণের সাথে 'ডিসি' এবং 'আরআই' প্রতিস্থাপন করুন।

পিএসকিএল থেকে বেরিয়ে আসুন এবং এই কমান্ডটি দিয়ে স্ক্রিপ্টটি চালান:

sh ./loader_script.sh

এটি আপনার নির্বাচিত রাষ্ট্রের জন্য ফাইলগুলি ডাউনলোড করবে, আনজিপ করবে এবং আপনার পোস্টজিআইএস ডাটাবেসে ডেটা আমদানি করবে।


আরে ওভারথের: বিস্তারিত প্রতিক্রিয়ার জন্য আপনাকে ধন্যবাদ। পিএসকিএল-এ থাকা অবস্থায়, "load o loader_script.sql" টাইপ করার ফলে কোনও অনুমতি অস্বীকৃত বিবৃতিতে ফলাফল হয়। কোন ধারণা কেন? আমি ব্যবহারকারী পোস্টগ্রিজ হিসাবে লগ ইন করছি।
স্ট্যাট_নোভাইস

দুঃখিত! আমি ভুলে গিয়েছি বেশিরভাগ লোকেরা পিএসকিএল চালাতে তাদের সাধারণ ব্যবহারকারীর অ্যাকাউন্টগুলি ব্যবহার করে না। আপনার পোস্টগ্রিজ ব্যবহারকারীর লেখার অনুমতি রয়েছে এমন কোথাও আপনাকে স্ক্রিপ্ট সংরক্ষণ করতে হবে। Iest o /tmp/loader_script.sql ব্যবহার করা সবচেয়ে সহজ যা ফাইলটি / tmp এ সংরক্ষণ করবে। তারপরে ফাইলটি চালানোর জন্য এটি sh ./tmp/loader_script.sql হবে।
আরে ওভারইথ

যে কাজ! যদিও, এখন আমি এই ত্রুটি বার্তাটি পেয়েছি "প্রদত্ত নাম এবং যুক্তির ধরণের সাথে কোনও ফাংশন মেলে না You আপনার স্পষ্টত ধরণের ক্যাসেট যুক্ত করার প্রয়োজন হতে পারে।" যখন লোডার স্ক্রিপ্টের জন্য ক্যোয়ারী চালাবেন। এছাড়াও, যদি আমি সঠিকভাবে মনে রাখি, আমাকে সেই ফাইলটি সম্পাদনা করতে হবে, আমার ইউজারনেম এবং ডিবি যুক্ত করতে ডান?
stat_novice

দ্বিগুণ দুঃখিত! আমিও সে সম্পর্কে ভুলে গেছি! প্রথমে যাচাই করার জিনিসটি আপনার ডাটাবেসের অনুসন্ধানের পথ হবে, বাঘের স্কিমা সেখানে রয়েছে তা নিশ্চিত করুন। ২ য় জিনিস যাচাই করতে হবে বাঘের স্কিমে এখানে রয়েছে সারণী, টাইগার.লোডার_প্ল্যাটফর্ম এবং বাঘ load লোডার_ভেরিয়েবলগুলি যা আপনার স্ক্রিপ্টগুলিকে আপনার পাসওয়ার্ড এবং অন্যান্য তথ্য বলে। এগুলি সম্পাদনা করার জন্য পিজিএডমিন ব্যবহার করুন। অবশেষে, আপনার লোডার স্ক্রিপ্টটি চালানোর আগে ভূ-কোডারের প্রয়োজনীয় সমস্ত সারণী সেট আপ করতে লোডার_জেনারেট_নেশন ফাংশনটি চালান। এই শূন্যস্থান পূরণ করার জন্য আমি আমার উত্তর সম্পাদনা করব।
আরে ওভারইথ

আরে ওভারথের: আপনি পুরুষ / মহিলাদের মধ্যে godশ্বর। এটি প্রায় কাজ করে। জাতি এবং রাষ্ট্র উভয় স্ক্রিপ্টগুলি চলছে এবং তারা আদমশুমারির ওয়েবসাইট এফটিপি করছে এবং ফাইলগুলি পুনরুদ্ধার করা হবে বলে মনে হচ্ছে, তবে উভয়ই সম্পূর্ণ করার পরে তারা নিম্নলিখিত কিছু ত্রুটি বিবৃতি জারি করেছে: "লোডার_সক্রিপশন.এসকিউএল: 408: লোডার_সক্রিপ্ট: এসকিএল: / usr / pgsql- 9.0 / বিন / পিএসকিএল: পাওয়া যায় নি "। তাছাড়া বাঘ_ডাটা স্কিমায় কোনও ডেটা নেই। আমার কি বিশেষত এই লাইনটি ফাইলগুলি সম্পাদনা করার দরকার আছে: "PGBIN = / usr / pgsql-9.0 / bin" রফতানি করুন?
স্ট্যাট_নোভাইস

0

পোস্টজিআইএস ইনস্টল করার বিষয়ে এই সাইটে একাধিক উত্তর রয়েছে। এখানে একটি , এবং নিক গৌথিয়ার এর সমাধানটিও দুর্দান্ত। এতে পর্যাপ্ত পরামর্শ পুনর্বার করা ...

পোস্টজিআইএস ইনস্টলেশন উবুন্টু 12.04 এবং তারপরে অনেক সহজ হয়েছে। এটি সম্পর্কে সাধারণত দুটি উপায় রয়েছে: পিপিএ থেকে ইনস্টলেশন এবং উত্স থেকে বিল্ডিং। নিম্নলিখিত প্রতিটি ক্ষেত্রে প্রতিটি শেল স্ক্রিপ্ট আমি ব্যবহার করি।

পিপিএ থেকে ইনস্টল করা হচ্ছে ... আমি ubuntugis-unstableপিপিএ ব্যবহার করি ।

# Add Ubuntu GIS PPA and update, upgrade
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable -y && sudo apt-get update && sudo apt-get upgrade

# Install PostGIS
sudo apt-get install postgis

# Recommends: sudo apt-get install postgresql-9.1-postgis-2.0

# Configure template database
POSTGIS_TEMPLATE=postgis-2.0.1
POSTGRESQL_VER=9.1
sudo su -c "createdb $POSTGIS_TEMPLATE" - postgres 
sudo -u postgres psql -d postgres -c "UPDATE pg_database SET datistemplate='true' WHERE datname='$POSTGIS_TEMPLATE';" 
sudo -u postgres psql -d $POSTGIS_TEMPLATE -f /usr/share/postgresql/$POSTGRESQL_VER/contrib/postgis-2.0/postgis.sql
sudo -u postgres psql -d $POSTGIS_TEMPLATE -c "GRANT ALL ON geometry_columns TO PUBLIC;"
sudo -u postgres psql -d $POSTGIS_TEMPLATE -c "GRANT SELECT ON spatial_ref_sys TO PUBLIC;"

উত্স থেকে বিল্ডিং ... এটি PostGIS 2.1 এবং PostgreSQL 9.1 ধরে নিয়েছে তবে উভয়ের সাম্প্রতিক সংস্করণ হতে পারে; প্রয়োজনীয় হিসাবে পরিবর্তন করুন।

cd /usr/local/ && sudo mkdir postgis && sudo chown [username] postgis && cd postgis
wget http://download.osgeo.org/postgis/source/postgis-2.1.0.tar.gz
tar -xzvf postgis-2.1.0.tar.gz && rm postgis-2.1.0.tar.gz && cd postgis-2.1.0
sudo ./configure --with-projdir=/usr/local/proj/v4.7.0/
make
sudo make install

# Configure template database
POSTGIS_TEMPLATE=postgis-2.1.0
POSTGRESQL_VER=9.1
sudo su -c "createdb $POSTGIS_TEMPLATE" - postgres 
sudo -u postgres psql -d postgres -c "UPDATE pg_database SET datistemplate='true' WHERE datname='$POSTGIS_TEMPLATE';" 
sudo -u postgres psql -d $POSTGIS_TEMPLATE -f /usr/share/postgresql/$POSTGRESQL_VER/contrib/postgis-2.0/postgis.sql
sudo -u postgres psql -d $POSTGIS_TEMPLATE -c "GRANT ALL ON geometry_columns TO PUBLIC;"
sudo -u postgres psql -d $POSTGIS_TEMPLATE -c "GRANT SELECT ON spatial_ref_sys TO PUBLIC;"

আপনি উভয়ের মধ্যে একটি থিম লক্ষ্য করবেন; এটি একটি টেমপ্লেট ডাটাবেস তৈরি এবং spatial_ref_sysটেবিলটি পপুলেট করা এখনও প্রয়োজনীয় ।

টাইগারের সাথে সেট আপ করার জন্য , পোস্টজিআইএস ২.x ডকুমেন্টেশন, অধ্যায় ২-তে টাইগার ডেটা লোড করার জন্য নির্দেশাবলী অনুসরণ করুন ।


আর্থার: আমি পোস্টজিআইএস ২.১ ইনস্টল করেছি এবং পোস্টগিস.এসকিউএল নিম্নলিখিত ডিরেক্টরিতে বিদ্যমান নেই: /usr/share/postgresql/9.3/contrib/postgis-2.1
stat_novice
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.