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 毛毛 <krave@xxxxxxx> 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.johnston@xxxxxxxxx> 写道:
On Sun, Jun 23, 2024, 11:43 毛毛 <krave@xxxxxxx> 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.