මම දැන් උබුන්ටු 9.10 හි පෝස්ට්ග්රෙස් 8.4 ස්ථාපනය කර ඇති අතර එය කිසි විටෙකත් සුපිරි පරිශීලකයෙකු නිර්මාණය කිරීමට මාගෙන් ඉල්ලා නැත. සුපුරුදු සුපර් යූසර් සහ එහි මුරපදය තිබේද? එසේ නොවේ නම්, මම නව එකක් නිර්මාණය කරන්නේ කෙසේද?
මම දැන් උබුන්ටු 9.10 හි පෝස්ට්ග්රෙස් 8.4 ස්ථාපනය කර ඇති අතර එය කිසි විටෙකත් සුපිරි පරිශීලකයෙකු නිර්මාණය කිරීමට මාගෙන් ඉල්ලා නැත. සුපුරුදු සුපර් යූසර් සහ එහි මුරපදය තිබේද? එසේ නොවේ නම්, මම නව එකක් නිර්මාණය කරන්නේ කෙසේද?
Answers:
අවවාදය "$ sudo passwd postgres" හරහා "postgres" සඳහා UNIX රහස්පදය වෙනස් කිරීම සම්බන්ධව පිළිතුර කැමති නොවන අතර පවා විය හැක භයානක !
මේ නිසා ය: පෙරනිමියෙන්, යුනික්ස් ගිණුම "පෝස්ට්ග්රෙස්" අගුළු දමා ඇත, එයින් අදහස් වන්නේ එය මුරපදයක් භාවිතා කර ප්රවේශ විය නොහැකි බවයි. ඔබ "sudo passwd postgres" භාවිතා කරන්නේ නම්, ගිණුම වහාම අගුළු හරිනු ලැබේ. නරකම දෙය නම්, ඔබ මුරපදය "පෝස්ට්ග්රෙස්" වැනි දුර්වල දෙයකට සකසන්නේ නම්, එවිට ඔබ විශාල ආරක්ෂක අනතුරකට නිරාවරණය වේ. උදාහරණයක් ලෙස, ඔබේ යුනික්ස් පද්ධතියට ප්රවේශ වීම සඳහා පරිශීලක නාමය / මුරපදය "පෝස්ට්ග්රෙස් / පෝස්ට්ග්රෙස්" යන පරිශීලක නාමය උත්සාහ කරමින් බොට් ගණනාවක් තිබේ.
ඔබ කළ යුත්තේ ක්රිස් ජේම්ස්ගේ පිළිතුර අනුගමනය කිරීමයි .
sudo -u postgres psql postgres
# \password postgres
Enter new password:
එය ටිකක් පැහැදිලි කිරීමට. PostgreSQL සේවාදායකයට ප්රවේශ වීම සඳහා සාමාන්යයෙන් පෙරනිමි ක්රම දෙකක් තිබේ:
"Psql" විධානය යුනික්ස් පරිශීලකයෙකු ලෙස ක්රියාත්මක කිරීමෙන් (ඊනියා IDENT / PEER සත්යාපනය), උදා : sudo -u postgres psql
. sudo -u
යුනික්ස් පරිශීලකයා අගුළු නොහරින බව සලකන්න .
PostgreSQL විසින්ම කළමනාකරණය කළ පරිශීලක නාමය / මුරපදය (ඊනියා TCP සත්යාපනය) භාවිතා කරමින් TCP / IP සම්බන්ධතාවය මගින් (එනම් යුනික්ස් මුරපදය නොවේ ).
එබැවින් යුනික්ස් ගිණුම "පෝස්ට්ග්රෙස්" සඳහා මුරපදය සැකසීමට ඔබට කිසි විටෙකත් අවශ්ය නොවේ. පෙරනිමියෙන් එය අගුළු දමා තබන්න.
ඔබ එය පෙරනිමි සැකසුමට වඩා වෙනස් ලෙස වින්යාස කරන්නේ නම් ඇත්ත වශයෙන්ම දේවල් වෙනස් විය හැකිය. උදාහරණයක් ලෙස, කෙනෙකුට PostgreSQL මුරපදය යුනික්ස් මුරපදය සමඟ සමමුහුර්ත කළ හැකි අතර දේශීය පිවිසුම් වලට පමණක් ඉඩ දිය හැකිය. එය මෙම ප්රශ්නයේ සීමාවෙන් ඔබ්බට වනු ඇත.
/etc/shadow
මුරපදය @lzap තබා ඇති ස්ථානයයි.
විධාන රේඛාවට ඇතුළත් කරන්න:
$ sudo -u postgres psql postgres
postgres=# \password postgres
ඔබ දකිවී:
Enter new password:
Enter it again:
ඔබ පරිශීලකයා හරහා පෝස්ට්ග්රෙස් හසුරුවයි postgres
:
# su - postgres
$ createdb mydb
$ psql -s mydb
# create user someuser password 'somepassword';
# GRANT ALL PRIVILEGES ON DATABASE mydb TO someuser;
su
postgres පරිශීලකයා වෙත root විය යුතුය . බොහෝ පද්ධති වල Postgres Unix ගිණුම අගුළු දමා ඇත (මුරපදයක් ක්රියා නොකරනු ඇත), එයින් අදහස් වන්නේsu
එම ගිණුමට root පමණක් විය හැකි බවයි.
sudo
වෙනුවට භාවිතා කරන්න su
.
sudo su - postgres
: \
sudo -u postgres
.
වින්ඩෝස් හි, පහත සඳහන් දෑ කරන්න (වැදගත්: වින්ඩෝස් පරිපාලක ගිණුමක් භාවිතා කරන්න ):
ස්ථාපනය කිරීමෙන් පසු විවෘත කරන්න <PostgreSQL PATH>\data\pg_hba.conf
.
මෙම පේළි දෙක වෙනස් කර "md5" "විශ්වාසය" ලෙස වෙනස් කරන්න:
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
PostgreSQL සේවාව නැවත ආරම්භ කරන්න (අවශ්ය නොවනු ඇත).
(අත්යවශ්ය නොවේ) විධාන විමසුමක් විවෘත කර කේත පිටුව 1252 ලෙස වෙනස් කරන්න:
cmd.exe /c chcp 1252
PostgreSQL වෙත පිවිසෙන්න. මුරපදයක් අවශ්ය නොවේ (ලොකු අකුර -U පරාමිතිය සැලකිල්ලට ගන්න):
psql -U postgres
(විකල්ප, ආරක්ෂක හේතූන් මත නිර්දේශ කරනු ලැබේ) postgres
පරිශීලකයාගේ මුරපදය වෙනස් කරන්න :
\password postgres
"විශ්වාසය" නැවත "md5" ලෙස වෙනස් කරන්න pg_hba.conf
.
ඔබ PostgreSQL කවචයට ප්රවේශ වීමට උත්සාහ කරන්නේ නම්, ඔබට ටයිප් කළ හැකිය:
psql -U postgres my_database
my_database
ඔබේ දත්ත ගබඩාවේ නම කොහේද?