
DĖMESIO!!!!
Šis HOWTO yra mažai testuotas ir gali būti  tik bendro pobūdžio rekomendacija. Autorius visur naudojo lt_LT.UTF-8 lokalę - naudojant kitas lokales, reikalingi papildomi veiksmai.



SQL-Ledger įdiegimas
# Įgyjame root vartotojo teises
su root

# Pereiname  į  katalogą, į kurį norime įdiegti programą
cd /usr/local/
# Išskleidžiame atsiųstą archyvą
tar -xzvf /kur_tas_archyvas_guli/sql-ledger.tar.gz
# Pereiname į SQL-Ledger katalogą
cd /usr/local/sql-ledger
# Kopijuojame numatytųjų nuostatų rinkmeną
cp ./sql-ledger.conf.default ./sql-ledger.conf

# Toliau reikia paruošti webserverį. Kolkas įdedu ištrauką iš originalaus README

#######################
 create a file sql-ledger-httpd.conf in the same location
 where your httpd.conf is and copy the next section into the file
 
   Alias /sql-ledger /usr/local/sql-ledger/
   <Directory /usr/local/sql-ledger>
     AllowOverride All
     AddHandler cgi-script .pl
     Options ExecCGI Includes FollowSymlinks
     Order Allow,Deny
     Allow from All
   </Directory>
 
   <Directory /usr/local/sql-ledger/users>
     Order Deny,Allow
     Deny from All
   </Directory>
 
 edit httpd.conf and add
 
   # SQL-Ledger
   Include /config_directory/sql-ledger-httpd.conf
 
 Note: use an absolute or relative path to include
 the configuration in your httpd.conf file.
 
 i.e. /etc/httpd/sql-ledger-httpd.conf
      etc/apache2/sql-ledger-httpd.conf
      
 restart your web server.
 
 
 Note: /usr/local/sql-ledger is only a suggested
 path, you may install in any directory.
 
 Some versions of Apache 2.0 use a conf directory for
 configuration files. If this is the case copy
 sql-ledger-httpd.conf into this directory and leave
 httpd.conf as is.
 
 If you are running Apache suExec tar up your installation
 and dereference the files and untar again.
 
   cd /usr/local/
   tar chf sql-ledger.tar sql-ledger
   rm -rf sql-ledger
   tar xf sql-ledger.tar
   rm sql-ledger.tar
######################################################

# Būtinai reikia pakeisti leidimus kai kuriems katalogams, kitaip webserveris nematys reikalingų katalogų.
#  Bendra komanda, kurioje vietoje 'nobody:nogroup' reikia įrašyti vartotojo, kurio teisėmis paleistas webserveris, vardą ir grupę
chown -hR nobody:nogroup users templates css spool

#  Ubuntu ir debianui turėtų tikti šitas
chown -hR www-data:www-data users templates css spool

# Fedorai, RedHatui turėtų tikti šitas
chown -hR apache:apache users templates css spool

# Postgresql duomenų bazės paruošimas

# Paruošiame aplanką duomenų kaupimo vietai - klusteriui (reikia turėti root teises)
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
# Užsiregistruojame postgres vartotoju
su postgres
# Sužadiname duomenų bazės klusterį su numatytąja unikodine lokale ir unikodiniais rašmenimis bei superuseriui (postgres) dedamu slaptažodžiu
initdb -D /usr/local/pgsql/data --locale=lt_LT.UTF-8 -E UNICODE -W 
# Debian grįstomis sistemoms
initdb -D /usr/local/pgsql/data --locale=lt_LT.UTF-8 -E UNICODE -W ‐‐debian‐conffile

createdb -E UNICODE

#/etc/postgresql.conf taisymas
# Nustatome rašmenų koduotę klientiniam kompiuteriui
# Klientams - Windows kompiuteriams
client_encoding = win1257 #gali būti nepalaikoma
# Klientams - Linux kompiuteriams su ISO8859-4
client_encoding = LATIN4
# Klientams - Linux kompiuteriams su ISO8859-13
client_encoding = LATIN7
# Klientams - Linux kompiuteriams su Unikodu
client_encoding = UNICODE
# Pataisome datos rašymo būdą
datestyle = 'ISO,YMD'


# /etc/postgresql/postgresql.env taisymas
# Nurodome naują klusterio vietą
PGDATA=${POSTGRES_DATA:-/usr/local/pgsql/data}

# /etc/postgresql/postmaster.conf taisymas
# Nurodome naują klusterio vietą
POSTGRES_DATA="/usr/local/pgsql/data"

# Sukuriame naują duomenų bazės vartotoją, turintį teisę kurti naujas duomenų bazes ir vartotojus:
# Fedorai, RedHatui
   $ createuser -d sql-ledger
   Shall the new user be allowed to create databases? (y/n) y
   Shall the new user be allowed to create more new users? (y/n) y
# Debianui ir Ubuntu, bent jau pradžiai, geriau kurti DB vartotoją 'www-data'
   $ createuser -d www-data
   Shall the new user be allowed to create databases? (y/n) y
   Shall the new user be allowed to create more new users? (y/n) y

# Toliau reikia įdiegti PL/PGSQL (postgres vartotojo teisėmis)
$ createlang plpgsql template1

# Naršyklės adreso juostoje surenkame http://localhost/sql-ledger/admin.pl
Spaudžiam 'Prisijungimas' > 'Duomenų bazės administravimas' > laukelyje 'Vartotojas' nurodome DB vartotojo vardą [Debian, Ubuntu - www-data, RedHat ir Fedora - sql-ledger), laukelyje 'Sukurti pagal pavyzdį' paliekame template1, kiti laukeliai gali likti tušti jei DB severis tame pačiame kompiuteryje > spaudžiame 'Sukurti duomenų aibę' >  laukelyje 'Sukurti duomenų aibę' įrašome kuriamos duomenų bazės pavadinimą (pvz.: bandomojiDB), laukelyje Daugiabaitė koduotė parenkame 'Unicode (UTF-8)', 'Sukurti sąskaitų planą' parenkame 'Lithuania_utf8' > spaudžiame 'Tęsti', džiaugiamės pranešimu 'Duomenų aibė DK4 sėkmingai sukurta' > spaudžiame 'Tęsti'

Toliau sutvarkome vartotojo duomenis:
spaudžiame 'Naujas vartotojas'  svarbesni nustatymai

Prisijungimo vardas - vardas, kuriuo jungsitės prie SQL-Ledger 
Tvarkyklė - įjungiame pg
Duomenų aibė - bandomojiDB (ar kita - kokią sukūrėte ankstesniąjame žingsnyje)
Vartotojas sql-ledger arba www-data, priklauso nuo distributyvo
Datos formatas - yyyy-mm-dd
Skaičiaus formatas 1000,00
Kalba - Lithuanian
Nustatyti pavyzdžius - Lithuanian (dėmesio, jeigu bus neteisingai nustatyti leidimai katalogams 'users ir templates' bus naudojami angliški ataskaitų šablonai)
Spaudžiame 'Išsaugoti'

Viskas, naršyklės adreso juostoje surenkame http://localhost/sql-ledger/login.pl ir galima džiaugtis :-) Arba keiktis :-).

Kaip įkelti  demonstracinę duomenų bazę
# Kaip paprastas vartotojas išspaudžiame rezervinę kopiją ten, kad ją galėtų pasiekti postgres vartotojas (namų kataloge kaip taisyklė nemato)
# Įgyjame vartotojo postgres teises
su postgres
# Ikeliame demonstracinę versiją
psql bandomojiDB <  /kelias_kur_ji_padeta/bando2-4.4.3-20041130.sql


DĖMESIO!!!!
Demonstracicinė versija šiaip mano pasižaidimas, kad perprasti programos veikimą. Jeigu kur nors užtiksite necenzūrinį žodį - nekreipkite į jį dėmesio :-).




