如何允许 EC2 实例权限访问计算机上的备份.sql.gz文件,以将 sql 数据库导入 Amazon RDS



我目前正在按照 AWS 教程"将数据导入 Amazon RDS MYSQL 或 MariaDB 数据库实例并减少停机时间"(https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.NonRDSRepl.html#MySQL.Procedural.Importing.Copy.Database(中的步骤进行操作。我目前无法在 Windows 10 CMD 中使用以下命令将压缩的数据库备份文件从计算机复制到 EC2 实例:

scp -r -i MyKeyName.pem backup.sql.gz ec2-user@myEC2IPV4Domain:/backup.sql.gz

我收到以下错误:

scp: /backup.sql.gz: Permission denied

为了解决这个问题,我尝试编辑文件的安全属性,以允许每个人完全访问此文件,而不仅仅是我的用户帐户。那行不通。我尝试过使用:

chmod 0400 backup.sql 

通过 Bash,然后使用:

gzip backup.sql

以获取 SQL.gz 文件。这两种方法都不起作用。使用 chmod 是本教程和相关故障排除教程 (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html( 建议的,用于访问备份 sql 文件或 MyKeyName.pem 文件的任何权限错误。使用 chmod 可以让我的 EC2 实例访问 pem 文件(即,我成功地排除了错误:未受保护的私钥文件、权限被拒绝(公钥((,但它似乎不适用于 sql 文件或其压缩的 gz 文件。在弄清楚如何成功将备份文件复制到我的 EC2 实例方面的任何帮助将不胜感激。

我不希望ec2-user有权写入/。使用其他路径,例如/tmp//home/ec2-user/

scp -r -i MyKeyName.pem backup.sql.gz ec2-user@myEC2IPV4Domain:/home/ec2-user/backup.sql.gz

最新更新