Sqltutor - instalace: Porovnání verzí

Z GeoWikiCZ
m (nová verze 0.03.06)
(zdrojové texty z CVS)
Řádek 1: Řádek 1:
{{Upravit}}{{Databáze}}
{{Databáze}}
[[Soubor:Sqltutor-1.png|250px|right]]
[[Soubor:Sqltutor-1.png|250px|right]]
Instalaci programu '''sqltutor''' a databáze příkladů '''sqlquiz''' tvoří dva hlavní kroky  
Instalaci programu '''sqltutor''' a databáze příkladů '''sqlquiz''' tvoří dva hlavní kroky  
Řádek 7: Řádek 7:


Každý z modulů sqltutor a sqlquiz je umístěn do vlastního
Každý z modulů sqltutor a sqlquiz je umístěn do vlastního
podadresáře stejného jména, implicitně se předpokládá, že jsou oba umístěny v jednom společném adresáři, který budeme označovat SQLtutor.
podadresáře stejného jména, implicitně se předpokládá, že jsou oba umístěny v jednom společném adresáři.
 
mkdir SQLtutor
cd    SQLtutor


Pokud se moduly sqltutor a sqlquiz nenacházejí ve společném adresáři, je nutno upravit Makefile modulu sqlquiz (nastavit proměnnou TUTOR).
Pokud se moduly sqltutor a sqlquiz nenacházejí ve společném adresáři, je nutno upravit Makefile modulu sqlquiz (nastavit proměnnou TUTOR).
Řádek 28: Řádek 25:
  apt-get install libpqxx libpqxx-dev
  apt-get install libpqxx libpqxx-dev


Zdrojové texty sqltutor si stahnete z http://sqltutor.fsv.cvut.cz/archive/, uložíte do SQLtutor a rozbalíte
Zdrojové texty sqltutor si stahnete z anonymního CVS serveru Savannah


  cd SQLtutor
  cvs -d:pserver:anonymous@cvs.sv.gnu.org:/sources/sqltutor co sqltutor
tar xvzf sqltutor-0.03.06.tar.gz


Přejmenujte vytvořený adresář na sqltutor, přejdete do něj a zadáte příkazy ./configure a make
Přejdete do vytvořeného podadresáře sqltutor a zadáte příkazy ./configure a make


   mv sqltutor-0.03.06 sqltutor
   cd sqltutor/sqltutor
  cd sqltutor
   ./configure
   ./configure
   make
   make
Řádek 72: Řádek 67:
  sqlquiz=> CREATE LANGUAGE plgqsql;
  sqlquiz=> CREATE LANGUAGE plgqsql;


Přejděte do adresáře SQLtutor, vytvořte podadresář sqlquiz, stáhněte si z adresy http://sqltutor.fsv.cvut.cz/archive/ zdrojové texty příkladů databáze sqlquiz, rozbalte tarball a zadejte příkaz make
Přejděte do adresáře sqltutor/sqlquiz a zadejte příkaz make


  cd SQLtutor 
  cd sqltutor/sqlquiz
mkdir sqlquiz
cd sqlquiz
tar xvzf sqlquiz-2008-MM-DD.tar.gz 
  make
  make



Verze z 9. 5. 2008, 16:39

Instalaci programu sqltutor a databáze příkladů sqlquiz tvoří dva hlavní kroky

  • překlad a instalace programu sqltutor
  • vytvoření a naplnění databáze sqlquiz

Každý z modulů sqltutor a sqlquiz je umístěn do vlastního podadresáře stejného jména, implicitně se předpokládá, že jsou oba umístěny v jednom společném adresáři.

Pokud se moduly sqltutor a sqlquiz nenacházejí ve společném adresáři, je nutno upravit Makefile modulu sqlquiz (nastavit proměnnou TUTOR).

Poznámka
Pokud není řečeno jinak, jsou všechny následující příklady převzaty z prostředí OS Debian/GNU Linux.

Překlad a instalace programu sqltutor

Musíte mít nainstalován následující software a knihovny

  • web server s podporou CGI skriptů (např. Apache)
  • kompilator g++ a program autoconf
  • C++ knihovnu libpqxx pro připojení k databázi PostgreSQL
  • C++ hlavičkové soubory knihovnu libpqxx-dev
apt-get install postgresql postgresql  
apt-get install libpqxx libpqxx-dev

Zdrojové texty sqltutor si stahnete z anonymního CVS serveru Savannah

cvs -d:pserver:anonymous@cvs.sv.gnu.org:/sources/sqltutor co sqltutor

Přejdete do vytvořeného podadresáře sqltutor a zadáte příkazy ./configure a make

 cd sqltutor/sqltutor
 ./configure
 make

Před spuštěním příkazu ./configure můžete explicitně nastavit parametry překladu, např.

export CXXFLAGS=

Pokud máte nainstalované všechny potřebné knihovna a překlad a sestavení programu proběhne bez chyb, nakopírujte program sqltutor do adresáře pro který máte povoleno spouštění CGI skriptů, např.

su
cp sqltutor /usr/lib/cgi-bin

Ověřte, že adresu na které je program umístěn, tj. CGI skript sqltutor, lze spustit z webového prohlížeče (úvodní dialogový panel nevyžaduje připojení k databázi).

Pokud chcete program sqltutor instalovat na veřejně přístupný server, musíte před jeho překladem změnit přístupové heslo k databázi v souboru settings.cpp (nastavení parametru db_connection).

Vytvoření a naplnění databáze sqlquiz

Musíte mí nainstalován databázový system PostgreSQL

1. vytvořte databázi

su
su - postgres
createdb sqlquiz

2. založte uživatele pro www přístup a nastavte mu heslo (uživatel by neměl mít oprávnění pro vytváření další rolí a databází).

createuser -D -R wwwquiz
psql
ALTER USER wwwquiz WITH PASSWORD 'krok';

3. Pokud již není vytvořen v databázi template1, vytvoříte v databázi sqlquiz jazyk PL/PGSQL

su
su - postgres
psql wwwquiz
sqlquiz=> CREATE LANGUAGE plgqsql;

Přejděte do adresáře sqltutor/sqlquiz a zadejte příkaz make

cd sqltutor/sqlquiz
make

Makefile v modulu sqlquiz se odvolává na soubory z modulu sqltutor (vytvořní tabulek, nastavení přístupových práv, úložná procedura pro výběr další otázky, atd.)

Ve webovém prohlížeči na příslušné adrese zadáte program sqltutor a můžete začít řešit testy.

Administrace

Program sqltutor v podstatě žádnou administraci nevyžaduje. Informace o spouštěných testech a záznamy o zadaných otázkách a odpovědích jsou ukládány v tabulkách sessions a sessions_answers.

Testovano pro
  • sqltutor-0.03.06.tar.gz
  • sqlquiz-2008-04-16.tar.gz
  • GNU autoconf 2.61
  • GNU g++ 4.1.2
  • postgresql-8.1
  • libpqxx-2.6.8
  • OS Debian/GNU Linux (etch).

SuSE GNU/Linux

  • Do souboru /etc/postgresql/main/pg_hba.conf přidejte řádek
local all all md5