আমার কনফিগারেশনে ( 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