Fel*_*ity 9 postgresql node-windows wiki.js
Windows Enterprise 2016 LTSB 版本 1607。安装了带有 PostgreSQL 的 Wiki.js。之前安装过 Node.js (v12.16.2)。
使用 Powershell 进行 wiki.js 安装过程的第 8 步:
node server
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
PS C:\wiki> node server
Loading configuration from C:\wiki\config.yml... OK
2021-01-03T23:06:14.299Z [MASTER] info: =======================================
2021-01-03T23:06:14.300Z [MASTER] info: = Wiki.js 2.5.170 =====================
2021-01-03T23:06:14.301Z [MASTER] info: =======================================
2021-01-03T23:06:14.301Z [MASTER] info: Initializing...
2021-01-03T23:06:14.688Z [MASTER] info: Using database driver pg for postgres [ OK ]
2021-01-03T23:06:14.690Z [MASTER] info: Connecting to database...
2021-01-03T23:06:15.698Z [MASTER] error: Database Connection Error: ECONNREFUSED 127.0.0.1:5432
2021-01-03T23:06:15.698Z [MASTER] warn: Will retry in 3 seconds... [Attempt 1 of 10]
2021-01-03T23:06:18.700Z [MASTER] info: Connecting to database...
2021-01-03T23:06:19.703Z [MASTER] error: Database Connection Error: ECONNREFUSED 127.0.0.1:5432
2021-01-03T23:06:19.703Z [MASTER] warn: Will retry in 3 seconds... [Attempt 2 of 10]
... (you get the point)
2021-01-03T23:06:51.728Z [MASTER] error: Database Connection Error: ECONNREFUSED 127.0.0.1:5432
2021-01-03T23:06:51.729Z [MASTER] warn: Will retry in 3 seconds... [Attempt 10 of 10]
2021-01-03T23:06:54.730Z [MASTER] info: Connecting to database...
2021-01-03T23:06:55.733Z [MASTER] error: Database Initialization Error: connect ECONNREFUSED 127.0.0.1:5432
Run Code Online (Sandbox Code Playgroud)
我意识到我忘记创建 PostgreSQL,所以我使用 pgAdmin4.28 创建一个“wiki”数据库。错误现在改为:
PS C:\wiki> node server
Loading configuration from C:\wiki\config.yml... OK
2021-01-04T00:27:21.979Z [MASTER] info: =======================================
2021-01-04T00:27:21.980Z [MASTER] info: = Wiki.js 2.5.170 =====================
2021-01-04T00:27:21.981Z [MASTER] info: =======================================
2021-01-04T00:27:21.982Z [MASTER] info: Initializing...
2021-01-04T00:27:22.363Z [MASTER] info: Using database driver pg for postgres [ OK ]
2021-01-04T00:27:22.365Z [MASTER] info: Connecting to database...
2021-01-04T00:27:22.428Z [MASTER] error: Database Connection Error: 28P01 undefined:undefined
2021-01-04T00:27:22.429Z [MASTER] warn: Will retry in 3 seconds... [Attempt 1 of 10]
2021-01-04T00:27:25.431Z [MASTER] info: Connecting to database...
2021-01-04T00:27:25.501Z [MASTER] error: Database Connection Error: 28P01 undefined:undefined
2021-01-04T00:27:25.501Z [MASTER] warn: Will retry in 3 seconds... [Attempt 2 of 10]
2021-01-04T00:27:28.503Z [MASTER] info: Connecting to database...
2021-01-04T00:27:28.545Z [MASTER] error: Database Connection Error: 28P01 undefined:undefined
2021-01-04T00:27:28.546Z [MASTER] warn: Will retry in 3 seconds... [Attempt 3 of 10]
Run Code Online (Sandbox Code Playgroud)
请发送帮助!我感谢所有的评论。谢谢!
我对 postgres 和 wiki.js 也有类似的问题。解决方案是在运行之前在 postgres 中手动创建数据库node server:
CREATE DATABASE wiki
Run Code Online (Sandbox Code Playgroud)
希望这可以节省你我花在解决这个问题上的时间。
小智 1
经过几个小时的测试,我意识到在 wiki.js 中使用 postgres 存在一些问题。您可以在 config.yml 中尝试以下一些建议:
db:
type: postgres
# if you are using docker try using IP instead of localhost
host: localhost
port: 5432
# don't use _ here. It'll cause connection error undefined.
user: wikijs
# start with letter, if you start with @ it will throw an error.
# I used a 18 long pass without any problem. Ex:
pass: wiki@projectW777!@
# you can use _ here. Ex:
db: prj_wiki
Run Code Online (Sandbox Code Playgroud)