Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »psql
a programu pg_dump
.Před pár měsíci jsem dělal jěstě na databázi MySQL. Nepočítám se za nějakého odborníka na databáze. S databází MySQL jsem byl zpočátku velmi spokojen, ale jak postupem doby programujete, začínáte vidět nějaké ty "mouchy", že by se dalo něco zlepšit, dělat jednodušeji a ne jenom editovat text. Dostal jsem jeden projekt a jako databáze byla zvolena PgSQL. A od té doby nechci příliš o databázi MySQL slyšet. PgSQL je trochu o něčem jiném.
Od tohoto článku můžete očekávat pohled programátora, který s touto databázi dělá, ale není na ni příliš velký odborník. Vzhledem k době, po kterou pracuji s touto databází, se řadím mezi začátečníky, a proto je tento článek psán především pro začátečníky. Patřím k programatorům, kteří dělají databáze řádově o 20-100 tabulkách.
Očekává se určitá znalost jazyka SQL a schopnost práce s nějakým
databázovým programem. Můzete zde najít pár důvodů, proč jsem přešel z
MySQL, a co to obnášelo. Konsolisté zde najdou popis nástroje
psql
a pg_dump
. I když jsem si původně myslel,
že s MySQL umím většinu věcí, tak u PgSQL jsem nabyl dojmu, že jsem
absolutní začátečník a nějak se s tím snažím, za pomoci dokumentace a
zkoušení všeho možného na projektech a v konsoli, vyrovnat.
Uvedu pár důvodů, proč používám PgSQL. Výhody i nevýhody postgresu. A to především nestranným pohledem. Nemám zájem nějak rozpoutat flame.
SELECT neco FROM neco WHERE neco
IN (SELECT neco_1 FROM ...);
psql
- tak dobré intuitivní uživatelské
prostředí jsem mimo editoru Vim a Bashe neviděl.Poznámka: Neříkám, že MySQL se nesnaží dohánět, co týče vlastností, PgSQL či jiné databáse. Přeci jenom ale vetšina věcí bude v PgSQL na dost vyšší úrovni. Zde mám na mysli případné flame typu "subselecty, transakce či funkce".
Celkově bych chtěl říci, že volba databáze závisí na aplikaci, pro kterou danou databázi používáte, na možnostech HW, ale i třeba na možnostech a schopnostech programátorského týmu.
První kontakt pro mě s touto databází byla její konverze z databáze
MySQL. Na tomto nejprve vysvětlím rozdíly mezi těmito dvou databázemi.
Pokud budete potřebovat převést databázi z MySQL, je pár projektů a z
nich si můžete stáhnout patřičné konverzní programy. Mě se vcelku osvědčil
mysqlpgsql.pl
. Informace o těchto skriptech najdete v
dokumentaci o přechodu databází na PgSQL
techdocs.postgresql.org.
Ne vše převede skript korektně. To potom zjisíte při následném dumpu.
Něco je třeba opravit ručně. Dá se to napravit nějakým rozumnějším
editorem. Mně se osvědčil Vim, ale při
zpracovávání souboru velikého desítky MB a více není zrovna
nejrychlejší. Pro větší možnoství dat a z důvodů se něco naučit, bych
doporučil grep
, sed
, cut
a
tr
. Případně můžete využít tyto editory či textové procesory
na vytvoření testovacích dat s parsováním nějakého textu do souboru s
dumpem. Jsem tvrdým zastáncem konsole a grafiku na svém stroji příliš
nepěstuji a nevyužívám.
Není od věci zeditovat celou databazí v nějakém rozumnějším editoru.
Využijete možnosti nahrazování a především se naučíte znát příkazy SQL
jazyka a strukturu databáze. Naučíte se rozumně pojmenovávat sloupce či
tabulky a dáte jménům objektů v databázi nějaký systém. Následně při
programování nepotřebujete zjišťovat, jak se ten či onen sloupec a tabulka
jmenuje. Někdy se děsím některých vizuálních programátorů, co neumí
vytvořit tabulku příkazem CREATE TABLE
či změnit nějaký její
sloupec pomocí příkazu ALTER TABLE
. Neberu však nikomu
vizuální prostředí. Každý dovede vstřebat informace jinak. Závisí to
skutečně na každém individuálně. A někdy je to dost námahy v konsoli obstát
v prostředí klikačů. Nicméně svoji snahu časem mnohanásobně zúročíte.
PgSQL dodržuje ve více případech než MySQL standard SQL92,95. A také budete muset dodržovat standard při psaní aplikací i vy. Očekávajte tedy větší počet chybových hlášek než na MySQL. Pokud bych měl k něčemu přirovnat MySQL databázi, tak k rychle vyšlechtěné okurce. Pokud chcete dostat z této databáze více, není už příliš šancí. A dalším důvodem je i její rozšíření a jednoduchost. Ale svůj účel plní. Tyto věty, ale nemyslím hanlivě.
Měl jsem problémy s komentářemi u tabulek MySQL. Vyřešil jsem to jejich smazáním a potom není problém tabulky dodatečně okomentovat.
Další problémy a odlišnosti jsou v sekvencích. V MySQL se to
řeší pomocí autoinkrementu. V postgresu toto není, ale jsou zde sequence.
Dost začátečníků toto zaskočí. Stačí ale v konsoli (musíte mít
nainstalovaný postgres) napsat třeba man CREATE*SEQEUNCE
, vzít
nějaký vzorový příklad a vytvořit si sequenci vlastní.
Zde je malý příklad:
CREATE SEQUENCE "tabulka_id_seq" start 1 increment 1
maxvalue 9223372036854775807 minvalue 1 cache 1;
CREATE TABLE "tabulka" (
"id" integer DEFAULT nextval('tabulka_id_seq'::text) NOT NULL,
"id_vazba" bigint DEFAULT '0' NOT NULL,
"polozka_0" integer,
"polozka_1" integer DEFAULT '0'
);
SELECT setval ('"tabulka_id_seq"', 1, false); /*nastavení hodnoty
sekvence v případě, že potřebujete mít jinou výchozí hodnotu než 1 */
Nedoporučuji používat konstrukce typu INSERT INTO tabulka SET
jmeno_sloupce=hodnota
. Začal jsem tuto konstrukci používat na jednom
projektu s tím, že jsem ji doporučil i používat i mým kolegům.
Výsledkem bylo to, že jsem si jako hlavní programátor značně pocvičil
nahrazovačky a usínal s písmenky před očima. Skutečně nedoporučuji. Lepší
bude psát trošku podle standardu SQL 92 a používat konstrukci typu
INSERT INTO tabulka (promenna_0,...,promenna_n) VALUES
(hodnota_0,...,hodnota_n);
Rozdíl je i ve formátech data a času. Další rozdíl je v použivání
klausule LIMIT. Zápis pro PgSQL je LIMIT <kolik_vypis>,
<od_kolikateho_zaznamu>
. U MySQL je to opačně.
Při grupování a agregačních dotazech musíte být pečlivějsí. Je potřeba grupovat podle všech sloupců na výpisu, které nejsou ovlivněny agregační funkcí.
SELECT MAX(polozka_0)
polozka_1
FROM tabulka
GROUP BY polozka_0,polozka_1
Ne jen podle jednoho. Naučíte se poté i používat klausuli
DISTINCT
.
Trošku více je v postgre řešena bezpečnost a nemůžete dělat všechno. Oproti tomu můžete chránit data a své výtvory před zraky nepovolaných a kopírujících uživatelů.
Novinkou pro Vás asi bude přejmenování tabulek a sloupců a mazání
sloupců. Toto je v MySQL jednodušší. Mazání či přejmenování sloupců je
řešeno pomocí vytvoření dočasné tabulky nebo view. Doporučuji se naučit
konstrukci typu CREATE nova_tabulka AS SELECT sloupce FROM
tabulka_odkud_chci_kopirovat;
. Může pomoci i přejmenování sloupce
pomocí ALTER tabulka RENAME COLUMN sloupec TO nove_jmeno
.
Ale toto bude spíše platit pro konsolisty.
Ještě uvedu jednu vychytávku z Postgresu. Naplnil jsem jednou
tabulku 25000 záznamy pro nějaké testování. Po smazání testovacích dat se
zpomalily výrazně operace nad touto tabulkou. Zkuste se někdy podívat, co
znamená příkaz VACUUM
.
Instalací PgSQL se zde nechci zabývat. Toto ponechám na někoho zkušenějšího. Pokud by jste ale hledali, zkuste třeba zde dokumentaci v pdf nebo si na linuxworldu.cz vyhledejte slovo PgSQL.
Co vás může zmást po instalaci postgresu je, že se nemůžete dostat do
databáze ani vytvořit novou databázi přes createdb
, případně
vytvořit uživatele pomocí createuser
anebo přistoupit do psql
konsole. Musíte být připojeni jako uživatel root či pokud chcete
přistupovat poprvé do databáze, tak jako uživatel postgres. Stačí dát
místo parametru 'password' parametr 'trust' v konfiguračním souboru
/etc/postgresql/pg_hba.conf
. Připojte se bez hesla a můžete
tak posílat do databáze přímo data přes psql
. Změňte parametr
na trust
. Restartněte postgres pomocí
/etc/init.d/posgresql restart
. Vytvořte uživatele pomocí
ALTER USER jmeno_usera PASSWORD 'moje_heslo';
a nebo pomocí
createuser
. Změnte potom parametr 'trust' na 'password'. A
opět restart postgres.
Jinak se dá ještě dost vyblbnout přes autentifikaci ident,
kerberosa md5
.
Tady je část konfiguráku postgree týkající se přístupů. Doporučuju
přečíst tento soubor. Hodí se i pro případnou další konfiguraci:
/etc/postgresql/pg_hba.conf
.
local all password
host moje_database vzdalene_ip sitova_maska password
host all 127.0.0.1 sitova_maska password
host moje_database 127.0.0.1 255.0.0.0 password
host all 0.0.0.0 0.0.0.0 reject
A potom uz jen psql moje_database -U uzivatel ( -h
vzdalena_masina )
.
Konfigurační soubory najdete v adresaři /etc/postgresql/
.
Další vychytávkou může být kódování či nesprávné řazení. To může být
zapříčíněno tím, že nemáte zakompilované locales a zde je nutné si postgres
přeložit ze zdrojáku či znova nainstalovat. Zjistíte to tak, že pokud si
dáte seřadit nějaké řádky typu řetězec, tak česká písmena budou na
konci.
Pokud Vy nebo Váš tým děláte s touto databází, nebude od věci najít aplikace (pro vaše kolegy a především pro ty, co potřebují intuitivní prostředí pro jejich myši).
psql
- databázová konsole. Co více si můžete přát ve
spolupráci s vaším oblíbeným externím editorem a příkazem less. Standardně
je s instalací PgSQL databáze.telnet
- zatim jsem nepřisel jak na to a zda to vůbec
jde (prostor v diskusi určitě je ....)PgAccess
-
není to nic extra, ale stačí a je i rychlý. Tl/Tcl rozhraní.phpPgAdmin
- Webové rozhraní. Chodí všude. Není nejkrásnější, ale účel plní. A i
kolegové z nejrozšířenější platformy světa s ním mohou pracovat.Pro windows jsem jestě viděl
PgAdmin II
.
Ten jsem se pro změnu pokoušel zprovoznit pod Windows, avšak až při změně
paměti ze 128 MB na 256 začal chodit přijatelnou rychlostí.Tora
- podle screenshotu
vypadá dobře. Nepovedlo se mi ji připojit k databázi. Původně je tento
databazový nástroj pod Oracle, ale měl by chodit na PgSQL a i na
MySQL. Existuje port i na Windows.AQuerix
- nezkoušel jsem. Mimo jiné, český produkt firmy
XTG. Není free.A nebo použít nějaký program, který používá ODBC ovladače.
Zatím jsem nepotřeboval, i když dělám databáze přes 50 tabulek.
Dostačuje tužka, papír, barvičky (to už musí být něco těžšího) a dobrá
dokumentace od zadavatele především. Ale u větších projektu je nějaký
nástroj patrně pro někoho nutností. Toto vidím jako jeden z nedostatků
Linuxu a to nějaký grafický free nástroj na tvorbu databází. Z nástrojů, co
jsem viděl, by mozná mohla být vyhovující
Už jsem zde napsal, ze patřím mezi "konsolisty" a jako
databázové rozhraní používam psql. Tento nástroj mě vcelku dost překvapil.
Trochu se o něm rozepíši. Předpokládám, že máte již nakonfigurovaný
Postgres. psql spustíte pomocí příkazu psql
<jmeno_database>
. Případně dodejte jméno uživatele, pokud
jste na konsoli jako jiný uživatel, než který má přístup k dané databázi:
-U <jmeno_uzivatele>
. Budete dotazáni na heslo. Po jeho
správném zodpovězení či uhodnutí, se ocitnete na konsoli databáze. Pokud
jste si neprečetli žádné informace typu man psql
, což předem
doporučuji, je třeba ozkoušet linuxové chvaty typu \? a \h
. Asi
jako zásadní příkaz ješte uvedu
\q
. Není umění něco spustit,
ale umět to i vypnout. Ti, co někdy zkoušeli a už nějaký rok zkouší
editor VIM, asi budou vědet svoje (:x, :q, :q!, ZZ).
Pokud hledáte nápovědu na bashové konsoli, může pomoci man + hvězdičková
konvence. Zkuste si man alter*tabl*
. Pokusím se nějak popsat
nejpoužívanější a nejužitečnější příkazy z postgresové konsole. Řazeno
abecedně podle zkratek. Jako pomůcku uvedu znak \ a za to nějaký
příkaz či objekt vašeho zájmu. Do toho všeho se jetě pokusím dodat nejaké
své poznatky, znalosti a užitečnosti. Určitě v tom najdete spojitost s
mnoha linuxovými příkazy. Nastíním ještě jak fungují některé přepínače
typu \[neco]
. \x zapni přepínač. Další
\x
vypni přepínač. Toto je třeba například pro: vypisuj každé
políčko výsledku tabulky sql dotazu do samostatného bloku.
\a toggle between unaligned and aligned output
mode
Zarovnávaný či nezarovnávaný výstup.
\c[onnect] [DBNAME|- [USER]] connect to new database
(currently "moje_database")
Přikonektění k jiné databázi.
\C TITLE set table title
Nastavení názvu tabulky - je možno generovat html výstup. Četl jsem něco i o postscriptu.
\cd [DIRNAME] change the current working directory
Změna pracovního adresáře v shellu.
\copy ... perform SQL COPY with data stream to the
clienthost
Kopíruj nějaký vstup, výstup odněkud a za použití oddělovačů. Příklad: třeba pošli to přes grep, sed, cut, recode, setříd to sortem, pošli zpátky do databáze a chybový výstup mi pošli mailem. Nebo načíst data z/do souboru - data jsou v tom souboru oddělena pomocí oddělovačů.
\d{t|i|s|v}... list tables/indexes/sequences/views
Zobraz tabulky, indexy, relace, view (super to věc)
příklad: \d moje_tabulka
můžeme použít i regulární výrazy v
názvu při zobrazení \dt, \ds, \di moje.*abulka pomocí tabelátoru se dají
při \d
tabulky a sql příkazy doplňovat.
\d{p|S|l} list access privileges, system tables, or large
objects
Výpis přístupových privilegíí, systémových tabulek (doporučuji zkusit pár selectů) a dlouhých objektů.
\da list aggregate functions
Seznam agregačních funkcí. Není nad dokumentaci na dosah. A především nad dokumentaci, která se rychle zobrazí.
\dd NAME show comment for table, type, function, or
operator
Je-li někde \d[+neco]
- je to nějaký výpis
informací.
\df list functions
Seznam funkcí online. Záleží na verzi postgre. Názvy funkcí, jejich vstupní parametry a návratové hodnoty.
\do list operators
Seznam operátorů. Třeba ~= něco jako like , +, >=
a
podobně. Můžete si definovat i své vlastní operátory.
\dT list data types
Datové typy na dosah.
\e FILENAME edit the current query buffer or file with
external editor
Skutečně vychytávka. K tomu oblíbený externí editor a editujete cokoli.
Pokud zadáte jenom \e
tak editujete dočasný soubor a v něm
příkaz či poslední prováděný příkaz. Nejvíce se mi osvědčil editor Vim.
Je v něm zabudovaná zvýrazněná syntax pro soubory sql. Případně se dá
zapnout pomocí :syntax on
anebo setsyntax=sql
Problém ale je, pokud neotevíráte již existující soubor, ale dočasný
soubor. Potom je třeba syntax nastavit v konfiguráku editoru. Ukončením
práce s editorem spustíte příkaz. Zde skutečně opatrně s ostrými daty.
Případně použít transakce. Anebo v jedné konsoli mít psql a v druhé
editovat sql soubor a v 3.konsoli dělat raději zálohu. Případně použít
singlestep mod - psql -s
\encoding ENCODING set client encoding
Nastavení kódování.
\f STRING set field separator
Nastavení oddělovače mezi sloupci ve výsledku. Ne každému vyhovuje znak | .
\g FILENAME send SQL command to server (and write
results to file or |pipe)
Pokud v sql příkazu nezadáte na konci znak ";", tak potom pomocí \g můžete tento příkaz odstartovat. Případně přesměrovat jeho výstup do souboru.
\h NAME help on syntax of SQL commands, * for all
commands
Další online nápověda týkající se SQL příkazů. \h
jméno_příkazu
a máte to i se syntaxí a stručným popisem daného
příkazu. Přitom můžete doplňovat příkazy pomocí tabelátoru jako v Bashi.
Třeba \h SELECT
, \h CREATE
, ...
\H toggle HTML output mode (currently off)
Html výstup výsledku dotazu. Tady jsem nějak nepřišel na to, jak přesměrovat výstup z dotazu do jiného programu než less. Občas by neškodilo obarvit výstup pro lepší orientaci v textu a informacích.
\i FILENAME execute commands from file
Proveď příkazy ze souboru.
\l list all databases
Seznam databází.
\lo_export, \lo_import, \lo_list, \lo_unlink
large object operations
Operace s "dlouhými objekty". Zatím jsem neměl důvod je nějak použít a predevším čas přečíst dokumentaci. To spíše zatím nechám na ty, co do PgSQL více vidí. Měly by sloužit na ukládání binarních dat a třeba obrázků do databáze.
\o FILENAME send all query results to file or
|pipe
Přesměrování výstupu dotazu do souboru či roury. Získáte tak úhledné textové tabulky s výsledky. Případně něco jiného. Záleží na oddělovačích.
\p show the content of the current query buffer
Ukáže obsah bufferu dotazu. Doslova vám vypíše dotaz (ne jeho výsledek), který máte v bufferu.
\pset VAR set table output option (VAR :=
{format|border|expanded|
fieldsep|null|recordsep|tuples_only|title|tableattr|pager})
Nastavení systémových proměnných konsole. Třeba rámeček.
\q quit psql
Ukončení práce s konsolí.
\r reset (clear) the query buffer
Vyčistění bufferu dotazu. Zrušení ještě neprovedeného dotazu.
\s FILENAME print history or save it to file
Výpis historie příkazové řádky.
\set NAME VALUE set internal variable
Nastavení systémových proměnných konsole.
\tshow only rows (currently off)
Výpis pouze výsledku dotazu - ne se záhlavím tabulky a jmény sloupců.
\T TEXT set HTML table tag attributes
Nastavení html výstupu.
\unset NAME unset (delete) internal variable
Zrušení nastavení systémové proměnné.
\w FILENAME write current query buffer to file
Zápis výstupu dotazu do souboru.
\x toggle expanded output (currently off)
Rozšířený výstup. Super věc. Vypisuje se do bloku pod sebe do sloupce každá buňka tabulky výsledku dotazu.
\z list table access privileges
Výpis privilegií a přístupu k daným tabulkám a objektům.
\! [COMMAND] execute command in shell or start
interactive shell
Spuštěni externího příkazu. Třeba něčeho na konsoli.
Možná je toho na začátek moc. Vřele doporučím zkoušet příkazy konsole a
učit se je. Zapamatovat si ty nejužitečnější a druhý den ještě zkusit. Mám
odzkoušeno, ze učit se je nazpamět nemá cenu. Musíte bezpečne vědet, co se
vám k čemu bude hodit. Data sice už umíme podle článku nějak zpracovat v
konsoli, ale jak je dostat ještě ven z databaze nebo do ní. Ať už se jedná
o data či o struktury tabulek. K tomu slouží příkazy psql
,
pg_dump
. A nebo pg_dump_all
pro dump z více
databází či všech databází.
pg_dump
Uvedu jenom pár příkladů a užitečných věcí.
$ pg_dump <moje_database> >
<soubor_do_ktereho_to_presmeruji_ze_standartniho_vystupu>
$ psql -d <moje_database> -f
<soubor_s_daty>
-a
-- pouze data-c
- vydumpovat databázi a i příkazy na smazání
existující a vytvoření daných struktur-d
- několik hodnot záznamu za sebou - krátké
inserty INSERT INTO tabulka VALUES
(hodnota_1,..,hodnota_n);
-D
dlouhé inserty - INSERT INTO tabulka
(jmeno_sloupce_1,..,jmeno_sloupce_n) VALUES
(hodnota_1,..,hodnota_n);
Vhodné třeba pro následnou editaci a opravu (pokud chcete mít puštěnou
syntax svého oblíbeného editoru), ale zase to dlouho trvá při dumpu. Co
řádek, to dotaz INSERT INSERT INTO tabulka (jmena_sloupcu) VALUES
(hodnoty);
. Před velkým dumpem doporučuji odrušit sequence a
indexy
-f file
- soubor, odkud chceme něco nadumpovat-Z 0..9 --compress=0..9
komprese - level -- vhodné
třeba při práci na pomalé lince. Případně použít tunel v kombinaci s
ssh.-h host
host - vzdálený stroj, databáze na dálkové
ovládání (platí i pro psql)-p port
-- ne vždy vám poběží PgSQL na portu
5432-O
- pokud dumpujete data z dané databáze a nejste
daným vlastníkem, tak použijte tento přepínač. Postgre si kontroluje dané
vlastnictví dat a struktur.-t <+jmeno_konkretni_tabulky>
- dumpuj pouze
tuto tabulku či objekt-U
- identifikuj se jako jiný uživatelPokud hledáte nějakou dokumentaci k PgSQL, tak tu je možné najít na
techdocs.postgreesql.org a archives.postgresql.org . Potom projít
třeba mailinglisty (zde se dá najít mnoho praktických rad). Případně si
stáhnout celou online dokumentaci v html. Také můžete zkusit příkaz man
nebo man -k něco
. Nějaká dokumentace je také v adresáři
/usr/doc/postgree*
. Pokud si myslíte, že něco nezvládate ani
po neúspěšném hledání, zkuste nějakou tu konferenci. Třeba databases@linux.cz .
Pokud hledáte nějaké články o PgSQL zkuste to na rootu - stačí dát vyhledat slovo
PgSQL, případně to samé na linuxworldu.
uzivatel@linuxu:/psql PgSQL
|
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
A jeste jedna vec, kdyz uz budu predpokladat, ze k databazi pristupuje jen ma aplikace, tak zrejme jste toho napsal opravdu velmi malo, protoze velmi casto se stane, ze operaci nelze zapsat atomicky - ano narazim spise na transakce - a kdyz v teto neatomicke operaci z duvodu, ktere naprosto nemuzete ovlivnit ta operace neni korektne dokoncena, tak mate po integrite a jiz nemate sanci zjistit, co jste pomoci sve kvalitni aplikace podelal...