![]() ![]() |
ARCHIV |
||||||||||||
![]() ![]() ![]() ![]() ![]() ![]() |
|
\z nebo \dp |
-- seznam tabulek a přístupových práv |
\l |
-- seznam všech databází |
\du |
-- seznam uživatelů databáze |
\g <soubor> |
-- ukončení příkazu SQL a přesměrování výstupu do <souboru> |
K příkazům SQL je přístupná obsáhlá nápověda v angličtině. Stačí zadat \h pro vypsání všech příkazů SQL. Pokud chcete nápovědu ke konkretnímu příkazu napište \h <prikaz>
napr.: \h INSERT
.
Nyní si nastavíme, jaká připojení bude PostgreSQL akceptovat (z jakého počítače je možné se připojit, kdo je oprávněn a k čemu). Toto nastavení proveďte v souboru pg_hba.conf
(pro jeho editaci musíte být přihlášeni jako root
), který (v Mandraku 10.0) najdete v adresáři /var/lib/pgsql/data
. Všechna pravidla, podle kterých se budou uživatelé přihlašovat se vpisují jako jednotlivé řádky ve formátu:
<typ_pripojeni> <databaze> <uzivatel> <IP_adresa> <maska> <druh_autorizace>
Pokud si chcete vyzkoušet práci s PostgreSQL na svém domácím počítači nebo otestovat stránky před tím než je odešlete na vzdálený databázový server, budete nejspíše chtít, aby bylo možné se připojit k databázi jen z vašeho počítače (localhost
), nejlépe pro všechny uživatele a aby bylo možné využívat všechny databáze. Není nic jednoduššího, stačí přidat tento řádek
host all all 127.0.0.1 255.255.255.255 trust
Váš počítač jste specifikovali podle jeho IP adresy (127.0.0.1
) a masky (255.255.255.255
), připojit se mohou všichni uživatelé (all
) a mohou využívat všechny databáze (all
). Všechny volby, které se dají při nastavování spojení využít, jsou popsané v souboru pg_hba.conf
.
Všechno už je připraveno a stačí jen přikázat systému PostgreSQL, aby naslouchal na portu 5432 a byl připravený ke komunikaci přes protokol TCP/IP
. Opět existují dvě možnosti. Nejdříve předvedu složitější postup, kterým ale můžete poškodit systém, a proto ho rozhodně nedoporučuji uživatelům, kteří přesně nevědí, co dělají. Aby PostgreSQL přijímal TCP/IP spojení, musí startovat s parametrem -i
. Tento přepínač můžete natvrdo dopsat do startovacího scriptu postgresql
, který najdete v adresáři /etc/rc.d/init.d/
. Parametr -i
musíte vepsat do řádky 157
, kde dochází ke startu PostgreSQL a nastavení přiděleného portu (výchozí je port 5432
). Po zásahu bude tedy tento řádek vypadat takto (přidaný parametr je značen tučně):
su -l postgres -s /bin/sh -c "/usr/bin/pg_ctl -D $PGDATA -p /usr/bin/postmaster \
-o '-i -p ${PGPORT}' start > /dev/null 2>&1" < /dev/null
A teď je čas na druhý, mnohem jednodušší způsob. Jediné, co musíte udělat, je změnit hodnotu proměnné tcpip_socket
v souboru /var/lib/pgsql/data/postgresql.conf
na true
. Opět musíte být přihlášen jako root
. Po úpravě bude řádek vypadat takto:
tcpip_socket = trueZkontrolujte si, že je služba
postgresql
spuštěna (obrázek 1) - MandrakeControlCenter -> Systém -> Služby
, případně ji spusťte, a můžete se připojit. K našemu prvnímu připojení můžeme použít program pgaccess
(najdete ho v menu More Aplications -> Databáze
). Z hlavního menu vybereme Databáze -> Otevřít
a objeví se nám okno, pro zadání údajů pro připojení. Pokud jste postupovali přesně podle tohoto návodu vyplňte políčka takto (obrázek 2). Pokud se vám nyní neobjevila žádná chyba, máte na svém počítači správně nainstalovaný PostgreSQL.
PostgreSQL, který jste si nainstalovali z rpm balíčků Mandrake, má bohužel chybně nastavené kódování, přesněji řečeno chybně, pokud chcete používat češtinu a ne cestinu. Abyste ale mohli využívat všech krás našeho mateřského jakyka (omlouvám se čtenářům ze Slovenska :)), používejte při tvorbě nových databází volbu ENCODING
. Pokud chcete, aby databáze měla uvedeného jiného vlastníka než toho, pod kterým jste právě přihlášeni, použijte volbu WITH OWNER
. Příkaz může vypadat třeba takto (jen podotýkám, že jde o příkaz jazyka SQL
, proto ho zadávejte v prostředí psql
):
CREATE DATABASE pokus WITH OWNER pavel_db ENCODING='iso8859-2';
Jestliže jste dosud pracovali s databází MySQL, znáte nejspíš grafické rozhraní phpMyAdmin
, které vám umožní spravovat databáze přes webový prohlížeč. Obdobný systém existuje i pro PostgreSQL. Jmenuje se phpPgAdmin
a podrobnější informace o něm najdete i na stránkách linuxsoftu.
Po stažení rozbalte soubor do adresáře ~/public_html
. Všechny scripty se uloží do adresáře ~/public_html/phpPgAdmin
. Opět je nutné provést alespoň základní nastavení, k tomu slouží soubor ~/public_html/phpPgAdmin/conf/config.inc.php
. Tady nastavte jazyk, ve kterém chcete systém ovládat, k tomu slouží proměnná $conf['default_lang']
, které nastavíte nejspíš hodnotu 'czech'
. Nyní najděte proměnnou $conf['servers'][0]['desc']
, ve které nastavujete jméno serveru, pod kterým se bude zobrazovat v přihlašovací nabídce. Další proměnnou je $conf['servers'][0]['host']
, která určuje adresu serveru, hodnotu nastavte na localhost
. Nyní použijeme proměnnou $conf['servers'][0]['port']
pro nastavení portu, na kterém PostgreSQL běží, ponechte přednastavenou hodnotu 5432
. Proměnnou $conf['servers'][0]['defaultdb']
nastavíte výchozí databázi, tu je třeba změnit jen pokud nemáte přístup k template1
. Proměnné $conf['servers'][0]['pg_dump_path']
a $conf['servers'][0]['pg_dumpall_path']
nastavují cesty k programům pg_dump
a pg_dumpall
. I tyto proměnné mohou zůstat nezměněné (/usr/bin/pg_dump
a /usr/bin/pg_dumpall
). Celé nastavení jednoho serveru tak bude vypadat následovně:
$conf['servers'][0]['desc'] = 'PostgreSQL'; $conf['servers'][0]['host'] = 'localhost'; $conf['servers'][0]['port'] = 5432; $conf['servers'][0]['defaultdb'] = 'template1'; $conf['servers'][0]['pg_dump_path'] = '/usr/bin/pg_dump'; $conf['servers'][0]['pg_dumpall_path'] = '/usr/bin/pg_dumpall';
Pokud byste si potřebovali nastavit připojení k několika serverům, vytvořte i pro ně takovýto blok příkazů, jen v názvech jednotlivých proměnných nahraďte [0]
za [1]
, [2]
...
Poslední zásah do konfiguračního souboru config.inc.php
je nutný jen pokud se budete připojovat na účty bez hesla. phpPgAdmin je automaticky nastaven, aby taková spojení odmítal. Ke změně slouží proměnná $conf['extra_login_security']
, kterou nastavíte na hodnotu false
. Popis konfiguračního souboru by vydal na celý článek, ale ta nejdůležitější nastavení jsem vám tu popsal.
Nyní můžete databázi ovládat pomocí webového rozhraní. Pokud máte v systému účet jménem pavel
, stačí do navigační lišty vašeho oblíbeného prohlížeče zadat http://localhost/~pavel/phpPgAdmin/
, vyplnit přihlašovací formulář a poté se vám již objeví úvodní obrazovka a můžete pracovat s databází PostgreSQL podle libosti.
Myslím, že základní informace o zprovoznění databáze jste se dozvěděli a teď už vše záleží hlavně na vaší odvaze experimentovat a učit se. Přeji hodně hezkých chvil s databází PostgreSQL.
Nejsou žádné diskuzní příspěvky u dané položky. Příspívat do diskuze mohou pouze registrovaní uživatelé. |
28.11.2018 23:56 /František Kučera
Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1
12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář
6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář
18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business.
Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář
12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář
16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář
31.7.2023 14:13 /
Linda Graham
iPhone Services
30.11.2022 9:32 /
Kyle McDermott
Hosting download unavailable
13.12.2018 10:57 /
Jan Mareš
Re: zavináč
2.12.2018 23:56 /
František Kučera
Sraz
5.10.2018 17:12 /
Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?