由于存储空间和内存很少,我已经获得了一个无法用我的电脑处理的数据库。
给我这个数据库的人给了我以下细节:
压缩文件大约为15GB,并且未压缩文件 85-90GB。一旦恢复,它将需要相似的空间,所以make 确保您恢复它的机器至少有220GB可用空间 安全。理想情况下,使用至少8GB RAM的机器 - 即使是我们的 适度的16GB RAM服务器可以解决推文上的大型查询问题 表。
你需要PostgreSQL 8.4或更高版本,你需要创建一个 使用UTF8编码恢复的数据库(创建时使用-E UTF8) 它来自命令行)。如果这是一个全新的PostgreSQL安装,我 强烈建议你调整默认的postgresql.conf设置 - 使用 pgtune实用程序(搜索GitHub)获取一些理智的默认值 硬件。默认值非常保守,你会看到 如果你不改变它们,可怕的查询性能。
当我告诉他我的电脑很糟糕时,他建议我使用 Amazon EC2实例。
我的两个问题是:
我对云服务和数据库完全无知,你可以看到。任何相关的教程都将受到高度赞赏。
答案 0 :(得分:2)
如果您是云托管新手,请考虑使用EnterpriseDB's cloud options而不是直接使用EC2。 Details here
如果您想直接使用EC2,请注册并创建实例。
选择您首选的Linux发行版图片。我假设你将在EC2上使用Linux;如果你想使用Windows那是因为你可能已经知道如何。让新VM配置并启动,然后按照Amazon for EC2和特定VM映像上提供的文档进行SSH。根据其文档为该VM映像执行任何建议的设置。
完成该实例的推荐设置后,即可安装PostgreSQL:
apt-get install postgresql
yum install postgresql
您现在可以连接到Pg作为默认的postgres
超级用户:
sudo -u postgres psql
并且能够像在任何其他计算机上一样使用PostgreSQL。你可能想让自己成为一个用户ID和一个新的数据库来恢复:
echo "CREATE USER $USER;" | sudo -u postgres psql
echo "CREATE DATABASE thedatabase WITH OWNER $USER" | sudo -u postgres psql
当然,将“数据库”更改为您想要调用数据库的任何内容。
将转储还原到新数据库的确切过程取决于转储格式。
对于pg_dump -Fc
或PgAdmin-III自定义格式转储:
sudo -u postgres pg_restore --dbname thedatabase thebackupfile
有关pg_restore
的详细信息,请参阅“man pg_restore”和online documentation。
对于纯SQL格式转储,您需要通过解压缩程序将转储流传输到psql。由于您没有说过转储文件名或格式,因此很难知道该怎么做。我假设它是gzip'ed(“。gz”文件扩展名),在这种情况下你会做类似的事情:
gzip -d thedumpfile.gz | sudo -u postgres psql thedatabase
如果文件扩展名为“.bz2”,请将gzip
更改为bzip2
。如果是.zip
,您需要unzip
,然后使用psql
在其上运行sudo -u postgres psql -f thedumpfilename
。
恢复后,您可以使用psql thedatabase
连接到数据库。