static void Main(string[] args)
        {
            try
            {
                //create RDS instance
                client = new AmazonRDSClient();
                CreateDBInstanceRequest request = new CreateDBInstanceRequest("packtpubRDS", 5, "db.m1.small", "mysql", "dbadmin", "password");
                client.CreateDBInstance(request);

                // list RDS instances
                DescribeDBInstancesRequest  request2  = new DescribeDBInstancesRequest();
                DescribeDBInstancesResponse response2 = new DescribeDBInstancesResponse();
                response2 = client.DescribeDBInstances(request2);
                foreach (DBInstance entry in response2.DBInstances)
                {
                    Console.WriteLine(entry.DBInstanceIdentifier);
                }

                Console.WriteLine("Waiting for 60 seconds before deleting the RDS instance");
                System.Threading.Thread.Sleep(50000);

                // delete RDS instance
                DeleteDBInstanceRequest delete_request = new DeleteDBInstanceRequest("packtpubRDS");
                delete_request.SkipFinalSnapshot = true;
                client.DeleteDBInstance(delete_request);
            }
            catch (AmazonRDSException exception)
            {
                Console.WriteLine("Error!");
                Console.WriteLine(exception.ErrorCode);
                Console.ReadKey();
            }
        }
        /// <summary>
        /// <para> Creates a new DB instance. </para>
        /// </summary>
        ///
        /// <param name="createDBInstanceRequest">Container for the necessary parameters to execute the CreateDBInstance service method on
        ///           AmazonRDS.</param>
        ///
        /// <returns>The response from the CreateDBInstance service method, as returned by AmazonRDS.</returns>
        ///
        /// <exception cref="DBParameterGroupNotFoundException"/>
        /// <exception cref="InstanceQuotaExceededException"/>
        /// <exception cref="DBInstanceAlreadyExistsException"/>
        /// <exception cref="StorageQuotaExceededException"/>
        /// <exception cref="DBSecurityGroupNotFoundException"/>
        /// <exception cref="InsufficientDBInstanceCapacityException"/>
        public CreateDBInstanceResponse CreateDBInstance(CreateDBInstanceRequest createDBInstanceRequest)
        {
            IRequest <CreateDBInstanceRequest> request  = new CreateDBInstanceRequestMarshaller().Marshall(createDBInstanceRequest);
            CreateDBInstanceResponse           response = Invoke <CreateDBInstanceRequest, CreateDBInstanceResponse> (request, this.signer, CreateDBInstanceResponseUnmarshaller.GetInstance());

            return(response);
        }
Beispiel #3
0
        public static void CreateDBInstance()
        {
            IClientProfile   profile = DefaultProfile.GetProfile("cn-hangzhou", "<accessKeyId>", "<accessSecret>");
            DefaultAcsClient client  = new DefaultAcsClient(profile);

            var request = new CreateDBInstanceRequest();

            request.Engine            = "<engine>";
            request.EngineVersion     = "<engineVersion>";
            request.DBInstanceClass   = "<dBInstanceClass>";
            request.DBInstanceStorage = 2; // dBInstanceStorage should be modify to int
            request.DBInstanceNetType = "<dBInstanceNetType>";
            request.SecurityIPList    = "<securityIPList>";
            request.PayType           = "<payType>";
            try {
                var response = client.GetAcsResponse(request);
                Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content));
            }
            catch (ServerException e)
            {
                Console.WriteLine(e);
            }
            catch (ClientException e)
            {
                Console.WriteLine(e);
            }
        }
        public DBInstance CreateDatabase(CreateDBInstanceRequest request)
        {
            CreateDBInstanceResponse response = Client.CreateDBInstance(request);

            if (response.CreateDBInstanceResult != null)
            {
                return(response.CreateDBInstanceResult.DBInstance);
            }
            throw new Exception("Failed to get CreateDBInstanceResult response");
        }
Beispiel #5
0
        private CreateDBInstanceRequest CreateDbInstanceRequest(DeveloperOptions devOptions)
        {
            var request = new CreateDBInstanceRequest()
            {
                // TODO - need to determine where defaults are used, and then not create the constructor where value is null (to use default)

                // These are required values.
                BackupRetentionPeriod = devOptions.BackupRetentionPeriod,
                DBParameterGroupName  = devOptions.DBParameterGroupName,
                DBSecurityGroups      = devOptions.DBSecurityGroups,
                DBSubnetGroupName     = devOptions.SubnetGroupName,
                DBInstanceClass       = devOptions.DbInstanceClass,
                DBInstanceIdentifier  = devOptions.DbInstanceIdentifier,
                DBName             = devOptions.DbName,
                Engine             = devOptions.Engine,
                EngineVersion      = devOptions.EngineVersion,
                LicenseModel       = devOptions.LicenseModel,
                MasterUsername     = devOptions.DBAUsername,
                MasterUserPassword = devOptions.DBAPassword,
                Iops                       = devOptions.ProvisionedIOPs,
                MultiAZ                    = devOptions.MultiAZ,
                OptionGroupName            = devOptions.OptionGroup,
                Port                       = devOptions.Port,
                PreferredBackupWindow      = devOptions.PreferredBackupWindow,
                PreferredMaintenanceWindow = devOptions.PreferredMXWindow,
                PubliclyAccessible         = devOptions.PubliclyAccessible,
                Tags                       = devOptions.Tags,
                VpcSecurityGroupIds        = devOptions.VPCSecurityGroupIds
            };

            if (!devOptions.MultiAZ)
            {
                request.AvailabilityZone = devOptions.AvailabilityZone;
            }

            // Oracle DB only parameter
            if (request.Engine.Equals("Oracle") && devOptions.CharacterSet != null)
            {
                request.CharacterSetName = devOptions.CharacterSet;
            }

            if (devOptions.AllocatedStorage != null)
            {
                request.AllocatedStorage = devOptions.AllocatedStorage;
            }

            if (devOptions.AutoMinorVersionUpgrade != null)
            {
                request.AutoMinorVersionUpgrade = devOptions.AutoMinorVersionUpgrade;
            }
            return(request);
        }
Beispiel #6
0
 /// <summary>
 /// 本接口(CreateDBInstance)用于创建包年包月的云数据库实例,可通过传入实例规格、数据库版本号、购买时长和数量等信息创建云数据库实例。
 /// </summary>
 /// <param name="req">参考<see cref="CreateDBInstanceRequest"/></param>
 /// <returns>参考<see cref="CreateDBInstanceResponse"/>实例</returns>
 public async Task<CreateDBInstanceResponse> CreateDBInstance(CreateDBInstanceRequest req)
 {
      JsonResponseModel<CreateDBInstanceResponse> rsp = null;
      try
      {
          var strResp = await this.InternalRequest(req, "CreateDBInstance");
          rsp = JsonConvert.DeserializeObject<JsonResponseModel<CreateDBInstanceResponse>>(strResp);
      }
      catch (JsonSerializationException e)
      {
          throw new TencentCloudSDKException(e.Message);
      }
      return rsp.Response;
 }
Beispiel #7
0
        private void CreateDatabase()
        {
            var request = new CreateDBInstanceRequest
            {
                Engine                = "postgres",
                EngineVersion         = "9.4.5",
                DBInstanceClass       = _context.Settings.Database.InstanceClass,
                AllocatedStorage      = 5,
                PubliclyAccessible    = true,
                BackupRetentionPeriod = _context.Settings.Database.BackupRetentionPeriod,
                MasterUsername        = _context.Settings.Database.MasterUserName,
                MasterUserPassword    = _context.Settings.Database.MasterUserPassword,
                DBName                = _context.Settings.Database.Name,
                DBInstanceIdentifier  = _context.Settings.Database.Name
            };

            _client.CreateDBInstance(request);
        }
Beispiel #8
0
 public CreateDBInstanceResponse CreateDBInstance(CreateDBInstanceRequest request)
 {
     return(this.Invoke <CreateDBInstanceResponse>(ConvertCreateDBInstance(request)));
 }
Beispiel #9
0
        private static IDictionary <string, string> ConvertCreateDBInstance(CreateDBInstanceRequest request)
        {
            IDictionary <string, string> dictionary = new Dictionary <string, string>();

            dictionary["Action"] = "CreateDBInstance";
            if (request.IsSetDBName())
            {
                dictionary["DBName"] = request.DBName;
            }
            if (request.IsSetDBInstanceIdentifier())
            {
                dictionary["DBInstanceIdentifier"] = request.DBInstanceIdentifier;
            }
            if (request.IsSetAllocatedStorage())
            {
                dictionary["AllocatedStorage"] = request.AllocatedStorage.ToString();
            }
            if (request.IsSetDBInstanceClass())
            {
                dictionary["DBInstanceClass"] = request.DBInstanceClass;
            }
            if (request.IsSetEngine())
            {
                dictionary["Engine"] = request.Engine;
            }
            if (request.IsSetMasterUsername())
            {
                dictionary["MasterUsername"] = request.MasterUsername;
            }
            if (request.IsSetMasterUserPassword())
            {
                dictionary["MasterUserPassword"] = request.MasterUserPassword;
            }
            List <string> dBSecurityGroups = request.DBSecurityGroups;
            int           num = 1;

            foreach (string str in dBSecurityGroups)
            {
                dictionary["DBSecurityGroups" + ".member." + num] = str;
                num++;
            }
            if (request.IsSetAvailabilityZone())
            {
                dictionary["AvailabilityZone"] = request.AvailabilityZone;
            }
            if (request.IsSetPreferredMaintenanceWindow())
            {
                dictionary["PreferredMaintenanceWindow"] = request.PreferredMaintenanceWindow;
            }
            if (request.IsSetDBParameterGroupName())
            {
                dictionary["DBParameterGroupName"] = request.DBParameterGroupName;
            }
            if (request.IsSetBackupRetentionPeriod())
            {
                dictionary["BackupRetentionPeriod"] = request.BackupRetentionPeriod.ToString();
            }
            if (request.IsSetPreferredBackupWindow())
            {
                dictionary["PreferredBackupWindow"] = request.PreferredBackupWindow;
            }
            if (request.IsSetPort())
            {
                dictionary["Port"] = request.Port.ToString();
            }
            return(dictionary);
        }