首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PostgreSQL 14和SCRAM认证的改变--应该迁移到SCRAM?

: no password supplied 这些错误的原因是,新版本的PG将密码加密的默认设置改成了SCRAM认证。...例如: psql -U postgres -h c76pri channel_binding=prefer or psql -U postgres -h c76pri channel_binding=require...TO 'md5'; SET 使用“on”、“true”、“yes”的尝试将被拒绝并出现错误: –-From PG 14 postgres=# set password_encryption TO 'on...此外,它在使用服务器提供的随机盐准备hash后通过线路进行通信。有效地传达的内容将与密码hash不同,因此它不太容易受到攻击。但容易出现字典攻击和泄露用户名密码hash问题。...如果我们指定“md5”作为认证方法,PG也将允许SCRAM认证。但反过来是行不通的。当创建PG14环境时,很可能将“scram-sha-256”作为认证方法。

1.6K30

Mac配置postgresql容器并连接

@15/bin:$PATH"' >> ~/.zshrcsource .zshrc启动psql服务brew services start postgresql@15验证psql安装后默认数据库用户名即当前用户名...可通过如下命令测试psql是否安装成功psql -d postgres如出现如下内容,代表安装成功,输入exit退出数据库即可。...POSTGRES_DB=testdb -e POSTGRES_PASSWORD=vin -p 20000:5432 postgres参数说明:-it -d 这两个参数一般同时使用,保证 container...--name 指定容器名-e POSTGRES_USER=vin 指定数据库用户名-e POSTGRES_PASSWORD=vin 指定数据库密码-e POSTGRES_DB=testdb 创建名为testdb...的数据库-p 20000:5432 将主机的端口与容器暴露的端口进行映射,访问主机的20000端口即访问容器的5432端口postgres 镜像名,就是之前docker pull的镜像验证使用docker

1.5K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Deepin 安装Postgres

    p 端口 -d 数据库名 如果连接失败或者说用户不存在则使用 postgres 用户登录 sudo su - postgres # 切换到 postgres 用户 psql # 登录 \password...dbuser GRANT ALL PRIVILEGES ON DATABASE mydb TO dbuser # 将 mydb 的所有权限赋予 dbuser 用户 \q # 退出 psql -U dbuser...实验 docker 容器的非持久化 # 我们进入 docker 中的 bash, 登录到 postgres数据库 psql # 输入这个命令会报错,说没有 root 用户,跟上面在本机上安装是一样的。...所以容器的停止并不会丢失数据,现在我们将容器删除掉试试,因为当前容器被创建后有自己的存储位置,而这些文件的生命周期是与 docker 容器相同的,即时被停止也依旧报存在容器中,当容器被销毁则数据也被删除...docker run -d --name postgres-server -p 5432:5432 -e "POSTGRES_PASSWORD=progres" postgres # 返回一串 id

    2.6K20

    【云+社区年度征文】Deepin 安装 Postgres 及 docker 持久化

    数据库名 如果连接失败或者说用户不存在则使用 postgres 用户登录 sudo su - postgres # 切换到 postgres 用户 psql # 登录 \password postgres...dbuser GRANT ALL PRIVILEGES ON DATABASE mydb TO dbuser # 将 mydb 的所有权限赋予 dbuser 用户 \q # 退出 psql -U dbuser...实验 docker 容器的非持久化 # 我们进入 docker 中的 bash, 登录到 postgres数据库 psql # 输入这个命令会报错,说没有 root 用户,跟上面在本机上安装是一样的。...所以容器的停止并不会丢失数据,现在我们将容器删除掉试试,因为当前容器被创建后有自己的存储位置,而这些文件的生命周期是与 docker 容器相同的,即时被停止也依旧报存在容器中,当容器被销毁则数据也被删除...docker run -d --name postgres-server -p 5432:5432 -e "POSTGRES_PASSWORD=progres" postgres # 返回一串 id

    1.9K30
    领券