Created
June 8, 2021 06:44
-
-
Save Joel-Jebitto-Dev/a735cb244f3fb7bc9a7da50dd3a96503 to your computer and use it in GitHub Desktop.
How to install and run postgresql in conda And Django Set Up
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This gist I write, because I couldn't find step by step instructions | |
how to install and start postgresql locally and not globally in the | |
operating system (which would require sudo). | |
I hope, this will help especially people new to postgresql! | |
#################################### | |
# create conda environment | |
#################################### | |
conda create --name myenv | |
# enter the environment | |
conda activate myenv | |
#################################### | |
# install postgresql via conda | |
#################################### | |
conda install -y -c conda-forge postgresql | |
#################################### | |
# create a base database locally | |
#################################### | |
initdb -D mylocal_db | |
############################## | |
# now start the server modus/instance of postgres | |
############################## | |
pg_ctl -D mylocal_db -l logfile start | |
## waiting for server to start.... done | |
## server started | |
# now the server is up | |
#################################### | |
# create a non-superuser (more safety!) | |
#################################### | |
createuser --encrypted --pwprompt mynonsuperuser | |
# asks for name and password | |
#################################### | |
# using this super user, create inner database inside the base database | |
#################################### | |
createdb --owner=mynonsuperuser myinner_db | |
#################################### | |
# in this point, if you run some program, | |
# you connect you program with this inner database | |
# e.g. Django | |
#################################### | |
# in django (Python) e.g. you do | |
nano <mysite>/settings.py # or instead of nano your favorite editor! | |
DATABASES = { | |
'default': { | |
'ENGINE': 'django.db.backends.postgresql', | |
'NAME': 'myinner_db', | |
'USER': 'mynonsuperuser', | |
'PASSWORD': '<mynonsuperuserpassword>', | |
'HOST': 'localhost', | |
'PORT': '', | |
} | |
} | |
# and it is available for django | |
# so that you can do | |
############################## | |
# do with the connected program further steps | |
############################## | |
# first install psycopg2 | |
# because django requires this for handling postgresql | |
conda install -c anaconda psycopg2 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment