# Friss SQLite verzió telepítése osztott tárhelyen

<div id="bkmrk-sqlite-verzi%C3%93-ellen%C5%90"><section class="wpb-content-wrapper">#### **SQLITE VERZIÓ ELLENŐRZÉSE**

A megosztott tárhelyen tapasztalható, hogy a különböző SQL adatbázis opciók verziói elég régiek. Például, ha telepíteni próbálta a Django programot, és az alapértelmezett SQLite adatbázis használatával futtatta a telepítést, akkor előfordulhat, hogy az alábbi hibát kapta:

```
$ python manage.py migrate
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).
```

És valóban, ha megnézzük az SQLite verziót, kiderül, hogy az nagyon elavult (az SQLite 3.7.17 2013-05-20-án jelent meg):

```
$ sqlite3 --version
3.7.17
```

A megoldás az hogy az SQLite újabb verzióját telepítjük, azonban a megosztott kiszolgálón nincs rendszergazdai hozzáférésünk (nyilvánvaló okból), ezért a hagyományos telepítési módszerek nem működnek. Ezért felmerül a kérdés: hogyan telepíthet egy újabb SQLite verziót rendszergazdai hozzáférési jogok nélkül?

Nos, valójában sokkal egyszerűbb, mint amilyennek hangzik!

#### **FRISS VERZIÓ TELEPÍTÉSE**

A telepítés lépései alább találhatóak meg:

<div class="vc_row wpb_row vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="wpb_text_column wpb_content_element "><div class="wpb_wrapper">1. Töltsük le a legfrissebb SQLite verziót, és tömörítsük ki (az [SQLite letöltési oldalán](https://www.sqlite.org/download.html) ellenőrizhető a legújabb verzió, és frissíthetőek a parancsok a tényleges verziószámmal): ```
    $ cd ~
    $ wget https://www.sqlite.org/2021/sqlite-autoconf-3360000.tar.gz
    $ tar xvfz sqlite-autoconf-3360000.tar.gz
    ```
2. Konfiguráljuk és telepítsük az SQLite új verzióját a .local mappába (az utolsó parancs futtatása eltarthat egy ideig): ```
    $ cd sqlite-autoconf-3360000
    $ ./configure --prefix=$HOME/.local
    $ make && make install
    ```
3. Következő lépésként mondjuk meg a szervernek, hogy hol található az új SQLite verzió: ```
    $ echo "alias sqlite3="$HOME/.local/bin/sqlite3"" >> ~/.bashrc
    $ echo "export LD_LIBRARY_PATH=$HOME/.local/lib:$LD_LIBRARY_PATH" >> ~/.bashrc
    $ source ~/.bashrc
    ```
4. Az előző lépés segítségével beállítottuk az sqlite3 shell parancsot, hogy az új telepítésre mutasson, ezért ellenőrizzük: ```
    $ sqlite3 --version
    3.36.0
    
    ```
5. A 3. lépésben azt is beállítottuk, hogy hol keressük az SQLite könyvtárakat, amikor Pythonba importáljuk őket, ezért ellenőrizzük, hogy a Python betölti-e a megfelelő SQLite verziót (győződjön meg arról, hogy a python parancs a Python3 verzióra mutat): ```
    $ python -c 'import sqlite3; print(sqlite3.sqlite_version)'
    3.36.0
    
    ```

</div></div></div></div></div></div>Ha még mindig a régi verziót mutatja, ellenőrizze, hogy a .bashrc fájlban az LD\_LIBRARY\_PATH környezeti változója az újonnan telepített SQLite könyvtár mappájára mutat (ebben az esetben .local/lib).

Innentől a tárhelyén elérhető a legújabb SQLite verzió és kihasználhatóak az új verzió előnyei abban az esetben, ha a Python alkalmazása csak helyben fut a szerveren. Abban az esetben a Passenger segítségével szeretné használni éles környezetben a frissen telepített SQLite alkalmazást akkor el kell végeznie a következő lépéseket is.

#### **ÉLES KÖRNYEZETI BEÁLLÍTÁSOK**

A tárhelyszolgáltatástól függően előfordulhat, hogy össze kell kapcsolnia az LD\_LIBRARY\_PATH környezeti változót az élesben használt szerverrel (vagy közvetlenül hozzá kell adnia a .htaccess fájljához). Például a cPanelt használó megosztott tárhely szolgáltatások esetében a [Phusion Passenger](https://www.phusionpassenger.com/) szerver futtatja a Node.js, Ruby vagy Python alkalmazásokat, így tisztában kell lennie az LD\_LIBRARY\_PATH környezeti változó új értékével. A cPanelben ez egy nagyon egyszerű beállítás:

<div class="vc_row wpb_row vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="wpb_text_column wpb_content_element "><div class="wpb_wrapper">- navigáljon az alkalmazás beállításaihoz (Python környezetek létrehozásához vagy szerkesztéséhez a Passenger számára írja be a python kifejezést a keresősávba, és nyomja meg az Enter billentyűt)
- hozzon létre vagy szerkesszen egy Python környezetet, lépjen a beállítások aljára, és adja hozzá a változót:
- kattintson a „Mentés” gombra a jobb felső sarokban
- abban az esetben, ha az Passenger szerver már futott, indítsa újra (kattintson az „Újraindítás” gombra).

</div></div></div></div></div></div>Passenger szerver innentől most már tisztában van az LD\_LIBRARY\_PATH környezeti változó helyével, és tudja, hogyan kell importálni a legújabb SQLite verziót.

</section></div><div id="bkmrk-"></div>