引子
Postgresql 数据库
想学习下这个数据库有什么特别的东西
环境
- centos7
- postgresql 10
- docker 17
目的
记录postgresql 安装和首次使用遇到的小白问题
安装
我是使用的Docker安装的,非常简单的命令
创建 docker-compose.xml 文件,键入下面内容
1 | version: '3' |
1 | docker-compose up -d |
这样就产生了一个容器 ps01
首次使用
开始 找了很多网上的资料想知道,怎么进postgresql命令行,结果怎么都不知道
最后还是:
进容器里面看
1 | docker exec -it ps01 bash |
偶然官网发现使用postgresql 默认用户名为 postgres
键入命令行
1 | psql -U postgres |
这样就直接进入 sql命令行了,这个是本地操作,估计本地是不需要输入用户密码的
接着我就下载了一个远程链接的软件,想远程连上数据库
不填密码,就不让链接
继续Google,百度
说默认密码是随机的
可以重新设置,后台进入容器,调出SQL命令行
键入命令,设置用户 postgres 用户名密码
1 | ALTER USER postgres WITH PASSWORD 'postgres'; |
1 | \q |
退出Sql命令行
注意:
- 密码postgres要用引号引起来
- 命令最后有分号
接着我用这个密码就可以远程连接查看数据库信息了
关于和Django使用的事
我的Django 开始使用的是 Sqlite 数据库
导出原先的sqlite 数据库信息
进入Django 后台操作
1 | ./manage.py dumpdata > dump.json |
修改数据库驱动为Postgresql
xx/setting.py
1 |
|
Postgresql 创建需要的数据库
sql 进入命令行操作1
2create database testdb;
\q
Django 创建需要用到的表格文件
1 | # 1. 创建更改的文件 |
导入原先导出好的数据文件
1 | ./manage.py loaddata dump.json |
继续研究发现 通过docker-compose 可以配置用户名密码等设置
1 | version: '3' |