Thank you for your advice.
.pgpass file would help a lot.
I recently started to writing SQL on PostgreSQL.
I think I should use capitial letters as sparingly as possible for identifiers.
At 2024-06-24 03:38:21, "Ron Johnson" <ronljohnso...@gmail.com> wrote:
Better to run now, and save yourself hassle in the future:
ALTER ROLE "Baba" RENAME TO baba;
Also, use a .pgpass file: https://www.postgresql.org/docs/14/libpq-pgpass.html
On Sun, Jun 23, 2024 at 3:22 PM 毛毛 <kr...@163.com> wrote:
Thank you! You are right!
After putting quotes around the username, it works!
在 2024-06-24 02:47:44,"David G. Johnston" <david.g.johns...@gmail.com> 写道:
On Sun, Jun 23, 2024, 11:43 毛毛 <kr...@163.com> wrote:
Hi,
I tried to create a user with CREATEDB permission.
Then I wanted to run command line tool `createdb` with this newly created user.
So I ran SQL first to create a user:
```
CREATE USER Baba WITH PASSWORD 'xxx' CREATEDB;
```
Then I run the following command on PowerShell on Windows 10:
```
createdb -U Baba -W test_db
```
But no mater how I tried, the password always failed.
If I specify the user as postgres, the defaut user, everything works fine.
```
createdb -U postgres -W test_db_1
```
Do you have any suggestions?
You named the user "baba" all lower-case but your createdb command uses Baba
and in the OS the case-folding of identifiers does not happen. Baba != baba
is your issue.
David J.