我已经在 docker 版本 1.10.1 的 docker 镜像中安装了 PostgreSQL 9.4.6。根据这张官方图片: https://github.com/docker-library/postgres/blob/443c7947d548b1c607e06f7a75ca475de7ff3284/9.4/Dockerfile 正如这里所说,为了创建初始数据库,我在“/docker-entrypoint-initdb.d”中添加了我的 sql 脚本。 https://hub.docker.com/_/postgres/ 现在遇到一些麻烦后,我发现当我添加查询以在数据库名称具有 '-' 的 sql 脚本中创建数据库时,它们只会导致容器崩溃(即容器在启动后立即退出)。 但是在数据库名称中没有“-”的查询工作正常,容器也不会崩溃,我可以访问这些数据库。 例如,此查询运行良好。
create database 1stName_2ndName with owner vagrant;
但是我分别尝试了这两个查询,但都失败了
create database '1stName-2ndName' with owner vagrant;
或
create database 1stName-2ndName with owner vagrant;
注意:考虑没有双引号的查询。 vagrant 用户已经创建并且工作正常。
我有一个名为 1stName-2ndName 的数据库。谁能帮我解决这个问题?
最佳答案
在我本地安装的 Postgres 中,以下查询没有问题:
create database "1stName-2ndName" with owner vagrant;
关于database - docker 和 PostgreSQL : can not create database having '-' in database name during initialization,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35599080/