আমার কনফিগারেশনে ( Ubuntu 10.04.3এবং PostgreSQL 8.4), আমি লগইন করে থাকা ব্যবহারকারীর .pgpassনামটির জন্য ফাইলটি থেকে পাসওয়ার্ড নেওয়ার চেষ্টা করার মত একইরকম হয় ।
লগ ইন হিসাবে deployer, আমি .pgpassকোনও ব্যবহারকারীর নামের মালিকানাধীন ডেটাবেস অ্যাক্সেস করতে ফাইলটি ব্যবহার করার চেষ্টা করছিলাম appname, যার কোনও ইউনিক্স সমতুল্য নেই। আমি আমার ডেটাবেস অ্যাক্সেস করতে ব্যবহারকারী হিসাবে .pgpassব্যবহার শুরু না করা পর্যন্ত আমি কাজটি করতে পারি না deployer...
এখানে আমার /home/deployer/.pgpassফাইল সামগ্রী:
*:*:*:deployer:password
এখানে একটি অংশ /etc/postgresql/8.4/main/pg_hba.conf:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 192.168.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
যেমন আপনি দেখতে পাচ্ছেন, আমার সমস্ত সংযোগের জন্য পাসওয়ার্ড প্রয়োজন ( md5)।
এই কনফিগারেশনটি ধরে নিয়ে, এই কমান্ডটি দিয়ে আমার তৈরি একটি ডেটাবেস রয়েছে বলে ধরে নেওয়া:
deployer@ubuntu-server:~$ createdb -T template0 -O deployer -E UTF8 dbname
আমি কোনও পাসওয়ার্ড প্রবেশ না করেই নিম্নলিখিত ক্রিয়াকলাপটি সম্পাদন করতে সক্ষম হয়েছি:
deployer@ubuntu-server:~$ dropdb dbname
যত তাড়াতাড়ি আমি আমার নাম পরিবর্তন যেমন .pgpassকরতে .pgpass-no, এটি একটি পাসওয়ার্ড প্রয়োজন হবে।
বিটিডাব্লু, আপনার .pgpassফাইলটি অবশ্যই অনুমতিাধীন থাকতে হবে তা ভুলে যাবেন না 0600:
deployer@ubuntu-server:~$ ls -la .pgpass
-rw------- 1 deployer staff 24 2012-01-06 17:29 .pgpass
-Uপতাকাdropdbএবংcreatedb