一直使用python自带的sqlite3,写给自己用没问题,还是有点拿不出手。
后期可能有新的数据库用户。由于Django对PostgreSQL的特殊支持,在网站中使用PostgreSQL也有优势,准备部署一个PostgreSQL测试。
下载相应版本的PostgreSQL。官网下载速度就可以满足需求。https://www.postgresql.org/download/
我下载的是压缩包(.zip),如果下载的是(.msi.)的直接安装就可以了,这里没有经验。
1.将下载好的的postgresql.zip解压到硬盘。
配置环境变量:/dir/to/pgsql/bin/
2.初始化。
这需要用到pgsql/bin/目录下的initdb.exe
以管理员权限打开cmd(因为初始化需要硬盘的读写权限)
inidb接口参考这个网址https://www.postgresql.org/docs/13/app-initdb.html
initdb — 创建一个新的PostgreSQL数据库集群
initdb[ option...] [ --pgdata| -D]directory
数据集目录是initdb唯一需要必须的参数 (This is the only information required by initdb),但您可以通过设置PGDATA环境变量来避免写入,这很方便,因为数据库服务器(postgres)稍后可以通过相同的变量找到数据库目录。
例如这么写:
在\pgsql\文件夹下新建一个data文件夹
initdb -D E:\postgresql-13.3-2-windows-x64-binaries\pgsql\data
2.启动PostgreSQL服务器服务。
这需要用到pgsql/bin/目录下的pg_ctl .exe,接口参考这个网址https://www.postgresql.org/docs/current/app-pg-ctl.html
pg_ctl — 初始化、启动、停止或控制PostgreSQL服务器
pg_ctl register[ -D datadir] [ -N servicename] [ -S a[uto]| d[emand]]
datadir就是步骤1的directory,servicename就是服务名称,-S指定服务是自动启动(a)还是手动(d)。
-l filename 设置日志文件。
例如:
pg_ctl register -D E:\postgresql-13.3-2-windows-x64-binaries\pgsql\data -N pgsql -S d
现在接着要启动服务:
net start pgsql
服务名称:pgsql
3.创建一个用户。
这需要用到pgsql/bin/目录下的createuser.exe,接口参考这个网址
https://www.postgresql.org/docs/13/app-createuser.html
createuser — 定义一个新的PostgreSQL用户帐户
createuser [connection-option...] [option...] [username]
例如:
createuser -s superuser
-s指定superuser是超级用户,注意用户名前不需要-U。(-U username要连接的用户名 (不是要创建的用户名)。)
3.创建一个数据库
系统自带名为postgres的数据库,可以使用,也许创建一个新的是更好的选择。
这需要用到pgsql/bin/目录下的createdb.exe,接口参考这个网址:
https://www.postgresql.org/docs/13/app-createdb.html
例如:
createdb pgsql
建议您打开\pgsql\pgAdmin 4\bin\pgAdmin4.exe
初次打开需要设置密码。
在dashbord选项卡中点击“Add New Server”在弹出的对话框中
general选项卡的name填入前面的服务名称。
connection选项卡的host name/address:填入localhost
username 可以填入刚刚创建的用户名,没有密码空着就行。
Advanced选项卡的host address:127.0.0.1
点击save。