我知道这不是一个编程问题,但我真的很感谢您的帮助。 我正在尝试将文件从S3存储桶传输到Amazon RDS MySQL数据库,尤其是表达“测试”。我第一次这样做,不知道该如何处理。 我尝试了以下方式:
aws rds restore-db-instance-from-s3 ^
--allocated-storage 250 ^
--db-instance-identifier myidentifier ^
--db-instance-class db.m4.large ^
--engine mysql ^
--master-user-name masterawsuser ^
--master-user-password masteruserpassword ^
--s3-bucket-name mybucket ^
--s3-ingestion-role-arn arn:aws:iam::account-number:role/rolename ^
--s3-prefix bucketprefix ^
--source-engine mysql ^
--source-engine-version 5.6.27
"incompatible restore" for "myidentifier"
。我不知道如何解决。
我想知道,通过上述代码,数据会在所需表中加载(“ test”)? thanks
您正在尝试将SQL恢复为RDS实例。 RDS实例是托管数据库服务器,然后您在其中创建数据库。 您应该创建一个RDS实例,然后使用MySQL命令行工具加载SQL代码。 如果您是从现有数据库服务器迁移的,也可以查看AWS DM。
您可以手动做一些此类...
SELECT `addressID`,`thirdPartyID`,`companyID`,`house`,`street`,`town`,`postcode`,`state`,`county`,`countryID`,`location`,`formattedAddress`,`createdAt`,`updatedAt`
FROM `addresses`
INTO OUTFILE S3 "s3-eu-west-1://rds-migration-bucket/2025-02-05 13:36:44/addresses"
FIELDS TERMINATED BY '\t' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' MANIFEST ON OVERWRITE ON;
LOAD DATA FROM S3 MANIFEST "s3-eu-west-1://rds-migration-bucket/2025-02-05 13:36:44/addresses.manifest"
REPLACE INTO TABLE `addresses`
CHARACTER SET utf8mb4
FIELDS TERMINATED BY '\t' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n'
(`addressID`,`thirdPartyID`,`companyID`,`house`,`street`,`town`,`postcode`,`state`,`county`,`countryID`,`location`,`formattedAddress`,`createdAt`,`updatedAt`)
SET `locationWKB`=ST_PointFromText(`location`);