Viktig: Vis hensyn ved bruk av filmdatabasen

Husk at dere alle kj?rer mot samme server, og at deres tunge sp?rringer bruker felles ressurser. Det er lov og lurt ? eksperimentere, men da en feil utformet sp?rring kan bruke mye tid p? ? konstruere noen store joins (eller produkter), er det lurt ? teste sp?rringer man er veldig usikker p? mot den lille filmdatabasen/eventuelt p? en egen liten database.

I tillegg ber drift om at dere passer p? ? avslutte prosessene for deres sp?rringer f?r man logger ut, da de ofte ser noen hengende psql-connections. Drift har f?lgende tips:

"Studentene b?r ihvertfall stoppe psql-prosessen skikkelig. Hvis ^C ikke fungerer kan de gj?re det ved ? avslutte den aktuelle unix-prosessen p? maskinen de har kj?rt den fra p? f?lgende m?te:

Kommandoen 'ps -U <brukernavn> u |grep psql' gir liste over brukerprosessene med pid, som kan kan avsluttes med kommandoen 'kill <pid>'.

Hvis studenten kun gj?r en kill p? oppkoblingen, kan det v?re at denne forblir aktiv. Normalt rydder postgresql selv opp etter en stund.

Men i denne tilfellet var det et endel?s statement som kj?rte og kj?rte. Da kan brukeren selv pr?ve ? rydde opp med ? logge seg p? igjen. Studenter kan maks ha 3 samtidige oppkoblinger mot basen, hvlket betyr at de aldri b?r bruke mer enn to om gangen, slik at de har en ledig som de kan benytte hvis det blir behov for ? rydde.

Og s? kan brukeren sjekke f?rst med denne statement om det finnes flere oppkoblinger til databasen:

> select * from pg_stat_activity where usename = '<bruker navn>';

Hvis det finnes flere en én, da kan disse avlutes med:

select pg_cancel_backend(pid) from pg_stat_activity where usename =
'<bruker navn>' AND pid <> pg_backend_pid();

eller hvis dette ikke fungerer:

select pg_terminate_backend(pid) from pg_stat_activity where usename =
'<bruker navn>' AND pid <> pg_backend_pid();

Brukeren kan bare avlutte sine egne tilkoblinger."

Publisert 6. feb. 2019 13:04 - Sist endret 6. feb. 2019 13:04