Class: Google::Apis::SqladminV1::DatabaseInstance

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/sqladmin_v1/classes.rb,
lib/google/apis/sqladmin_v1/representations.rb,
lib/google/apis/sqladmin_v1/representations.rb

Overview

A Cloud SQL instance resource.

Defined Under Namespace

Classes: FailoverReplica

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ DatabaseInstance

Returns a new instance of DatabaseInstance.



806
807
808
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 806

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#backend_typeString

The backend type. SECOND_GEN: Cloud SQL database instance. EXTERNAL: A database server that is not managed by Google. This property is read-only; use the tier property in the settings object to determine the database type. Corresponds to the JSON property backendType

Returns:

  • (String)


611
612
613
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 611

def backend_type
  @backend_type
end

#connection_nameString

Connection name of the Cloud SQL instance used in connection strings. Corresponds to the JSON property connectionName

Returns:

  • (String)


616
617
618
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 616

def connection_name
  @connection_name
end

#create_timeString

Output only. The time when the instance was created in RFC 3339 format, for example 2012-11-15T16:19:00.094Z. Corresponds to the JSON property createTime

Returns:

  • (String)


622
623
624
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 622

def create_time
  @create_time
end

#current_disk_sizeFixnum

The current disk usage of the instance in bytes. This property has been deprecated. Use the "cloudsql.googleapis.com/database/disk/bytes_used" metric in Cloud Monitoring API instead. Please see this announcement for details. Corresponds to the JSON property currentDiskSize

Returns:

  • (Fixnum)


631
632
633
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 631

def current_disk_size
  @current_disk_size
end

#database_versionString

The database engine type and version. The databaseVersion field cannot be changed after instance creation. * MySQL instances: MYSQL_8_0, MYSQL_5_7 ( default), or MYSQL_5_6. * PostgreSQL instances: POSTGRES_9_6, POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13 (default). * SQL Server instances: SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, or SQLSERVER_2019_WEB, SQLSERVER_2017_STANDARD (default), SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, or SQLSERVER_2017_WEB. Corresponds to the JSON property databaseVersion

Returns:

  • (String)


642
643
644
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 642

def database_version
  @database_version
end

#disk_encryption_configurationGoogle::Apis::SqladminV1::DiskEncryptionConfiguration

Disk encryption configuration for an instance. Corresponds to the JSON property diskEncryptionConfiguration



647
648
649
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 647

def disk_encryption_configuration
  @disk_encryption_configuration
end

#disk_encryption_statusGoogle::Apis::SqladminV1::DiskEncryptionStatus

Disk encryption status for an instance. Corresponds to the JSON property diskEncryptionStatus



652
653
654
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 652

def disk_encryption_status
  @disk_encryption_status
end

#etagString

This field is deprecated and will be removed from a future version of the API. Use the settings.settingsVersion field instead. Corresponds to the JSON property etag

Returns:

  • (String)


658
659
660
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 658

def etag
  @etag
end

#failover_replicaGoogle::Apis::SqladminV1::DatabaseInstance::FailoverReplica

The name and status of the failover replica. Corresponds to the JSON property failoverReplica



663
664
665
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 663

def failover_replica
  @failover_replica
end

#gce_zoneString

The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone. Corresponds to the JSON property gceZone

Returns:

  • (String)


670
671
672
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 670

def gce_zone
  @gce_zone
end

#instance_typeString

The instance type. This can be one of the following: * CLOUD_SQL_INSTANCE: A Cloud SQL instance that is not replicating from a primary instance. * ** ON_PREMISES_INSTANCE*: An instance running on the customer's premises. * * READ_REPLICA_INSTANCE**: A Cloud SQL instance configured as a read-replica. Corresponds to the JSON property instanceType

Returns:

  • (String)


678
679
680
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 678

def instance_type
  @instance_type
end

#ip_addressesArray<Google::Apis::SqladminV1::IpMapping>

The assigned IP addresses for the instance. Corresponds to the JSON property ipAddresses



683
684
685
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 683

def ip_addresses
  @ip_addresses
end

#ipv6_addressString

The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances. Corresponds to the JSON property ipv6Address

Returns:

  • (String)


689
690
691
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 689

def ipv6_address
  @ipv6_address
end

#kindString

This is always sql#instance. Corresponds to the JSON property kind

Returns:

  • (String)


694
695
696
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 694

def kind
  @kind
end

#master_instance_nameString

The name of the instance which will act as primary in the replication setup. Corresponds to the JSON property masterInstanceName

Returns:

  • (String)


699
700
701
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 699

def master_instance_name
  @master_instance_name
end

#max_disk_sizeFixnum

The maximum disk size of the instance in bytes. Corresponds to the JSON property maxDiskSize

Returns:

  • (Fixnum)


704
705
706
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 704

def max_disk_size
  @max_disk_size
end

#nameString

Name of the Cloud SQL instance. This does not include the project ID. Corresponds to the JSON property name

Returns:

  • (String)


709
710
711
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 709

def name
  @name
end

#on_premises_configurationGoogle::Apis::SqladminV1::OnPremisesConfiguration

On-premises instance configuration. Corresponds to the JSON property onPremisesConfiguration



714
715
716
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 714

def on_premises_configuration
  @on_premises_configuration
end

#out_of_disk_reportGoogle::Apis::SqladminV1::SqlOutOfDiskReport

This message wraps up the information written by out-of-disk detection job. Corresponds to the JSON property outOfDiskReport



719
720
721
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 719

def out_of_disk_report
  @out_of_disk_report
end

#projectString

The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable. Corresponds to the JSON property project

Returns:

  • (String)


725
726
727
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 725

def project
  @project
end

#regionString

The geographical region. Can be: * us-central (FIRST_GEN instances only) * us-central1 (SECOND_GEN instances only) * asia-east1 or ** europe-west1*. Defaults to **us-central* or us-central1 depending on the instance type. The region cannot be changed after instance creation. Corresponds to the JSON property region

Returns:

  • (String)


733
734
735
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 733

def region
  @region
end

#replica_configurationGoogle::Apis::SqladminV1::ReplicaConfiguration

Read-replica configuration for connecting to the primary instance. Corresponds to the JSON property replicaConfiguration



738
739
740
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 738

def replica_configuration
  @replica_configuration
end

#replica_namesArray<String>

The replicas of the instance. Corresponds to the JSON property replicaNames

Returns:

  • (Array<String>)


743
744
745
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 743

def replica_names
  @replica_names
end

#root_passwordString

Initial root password. Use only on creation. Corresponds to the JSON property rootPassword

Returns:

  • (String)


748
749
750
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 748

def root_password
  @root_password
end

#satisfies_pzsBoolean Also known as: satisfies_pzs?

The status indicating if instance satisfiesPzs. Reserved for future use. Corresponds to the JSON property satisfiesPzs

Returns:

  • (Boolean)


753
754
755
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 753

def satisfies_pzs
  @satisfies_pzs
end

#scheduled_maintenanceGoogle::Apis::SqladminV1::SqlScheduledMaintenance

Any scheduled maintenancce for this instance. Corresponds to the JSON property scheduledMaintenance



759
760
761
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 759

def scheduled_maintenance
  @scheduled_maintenance
end

#secondary_gce_zoneString

The Compute Engine zone that the failover instance is currently serving from for a regional instance. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary/failover zone. Reserved for future use. Corresponds to the JSON property secondaryGceZone

Returns:

  • (String)


767
768
769
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 767

def secondary_gce_zone
  @secondary_gce_zone
end

The URI of this resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


772
773
774
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 772

def self_link
  @self_link
end

#server_ca_certGoogle::Apis::SqladminV1::SslCert

SslCerts Resource Corresponds to the JSON property serverCaCert



777
778
779
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 777

def server_ca_cert
  @server_ca_cert
end

#service_account_email_addressString

The service account email address assigned to the instance. This property is read-only. Corresponds to the JSON property serviceAccountEmailAddress

Returns:

  • (String)


783
784
785
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 783

def 
  @service_account_email_address
end

#settingsGoogle::Apis::SqladminV1::Settings

Database instance settings. Corresponds to the JSON property settings



788
789
790
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 788

def settings
  @settings
end

#stateString

The current serving state of the Cloud SQL instance. This can be one of the following: * SQL_INSTANCE_STATE_UNSPECIFIED: The state of the instance is unknown. * RUNNABLE: The instance is running, or has been stopped by owner.

  • SUSPENDED: The instance is not available, for example due to problems with billing. * PENDING_DELETE: The instance is being deleted. * ** PENDING_CREATE*: The instance is being created. * **MAINTENANCE: The instance is down for maintenance. * **FAILED*: The instance creation failed. Corresponds to the JSON property state

Returns:

  • (String)


799
800
801
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 799

def state
  @state
end

#suspension_reasonArray<String>

If the instance state is SUSPENDED, the reason for the suspension. Corresponds to the JSON property suspensionReason

Returns:

  • (Array<String>)


804
805
806
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 804

def suspension_reason
  @suspension_reason
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 811

def update!(**args)
  @backend_type = args[:backend_type] if args.key?(:backend_type)
  @connection_name = args[:connection_name] if args.key?(:connection_name)
  @create_time = args[:create_time] if args.key?(:create_time)
  @current_disk_size = args[:current_disk_size] if args.key?(:current_disk_size)
  @database_version = args[:database_version] if args.key?(:database_version)
  @disk_encryption_configuration = args[:disk_encryption_configuration] if args.key?(:disk_encryption_configuration)
  @disk_encryption_status = args[:disk_encryption_status] if args.key?(:disk_encryption_status)
  @etag = args[:etag] if args.key?(:etag)
  @failover_replica = args[:failover_replica] if args.key?(:failover_replica)
  @gce_zone = args[:gce_zone] if args.key?(:gce_zone)
  @instance_type = args[:instance_type] if args.key?(:instance_type)
  @ip_addresses = args[:ip_addresses] if args.key?(:ip_addresses)
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
  @kind = args[:kind] if args.key?(:kind)
  @master_instance_name = args[:master_instance_name] if args.key?(:master_instance_name)
  @max_disk_size = args[:max_disk_size] if args.key?(:max_disk_size)
  @name = args[:name] if args.key?(:name)
  @on_premises_configuration = args[:on_premises_configuration] if args.key?(:on_premises_configuration)
  @out_of_disk_report = args[:out_of_disk_report] if args.key?(:out_of_disk_report)
  @project = args[:project] if args.key?(:project)
  @region = args[:region] if args.key?(:region)
  @replica_configuration = args[:replica_configuration] if args.key?(:replica_configuration)
  @replica_names = args[:replica_names] if args.key?(:replica_names)
  @root_password = args[:root_password] if args.key?(:root_password)
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
  @scheduled_maintenance = args[:scheduled_maintenance] if args.key?(:scheduled_maintenance)
  @secondary_gce_zone = args[:secondary_gce_zone] if args.key?(:secondary_gce_zone)
  @self_link = args[:self_link] if args.key?(:self_link)
  @server_ca_cert = args[:server_ca_cert] if args.key?(:server_ca_cert)
  @service_account_email_address = args[:service_account_email_address] if args.key?(:service_account_email_address)
  @settings = args[:settings] if args.key?(:settings)
  @state = args[:state] if args.key?(:state)
  @suspension_reason = args[:suspension_reason] if args.key?(:suspension_reason)
end