2.5 KiB
2.5 KiB
API
prodtgres
# Acerder à postgres
sudo su - postgres
# itintialisation de la directory data
initdb -D /var/lib/postgres/data
# Création d'un user
createuser --interactive
# Création d'une base de donnée
createdb myDatabase
# aller dans la base de donée
psql -d myDatabaseName
SQLAlchemy
engine
# crée un eengine pour se copnnecter à une base de données avec un user
engine = create_engine(
"postgresql+psycopg2://postgres:password@localhost:5432/postgres",
isolation_level="",
)
isolation_level
| Niveau | Description | Effets |
|---|---|---|
| READ UNCOMMITTED | Peut lire des données non validées par d’autres transactions. | PostgreSQL ne le supporte pas vraiment, il se comporte comme READ COMMITTED. |
| READ COMMITTED (par défaut) | Chaque requête ne voit que les données validées à ce moment-là. | Si une autre transaction change quelque chose après que tu aies commencé, tu ne le vois qu’à la prochaine requête. |
| REPEATABLE READ | Toutes les requêtes dans la même transaction voient les mêmes données. | Tu vois un “instantané” cohérent pendant toute la transaction. Les nouvelles modifications des autres transactions ne sont pas visibles. |
| SERIALIZABLE | Niveau le plus strict. Les transactions se comportent comme si elles étaient exécutées l’une après l’autre. | Empêche tous les phénomènes d’anomalies concurrentes (lecture fantôme, etc.), mais peut provoquer des erreurs de serialization si conflit. |
| AUTOCOMMIT | Pas vraiment un niveau d’isolation | Exécute cette commande immédiatement, sans transaction |