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.



499
500
501
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 499

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

Instance Attribute Details

#backend_typeString

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)


285
286
287
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 285

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)


290
291
292
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 290

def connection_name
  @connection_name
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)


297
298
299
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 297

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, or POSTGRES_13 (default). SQL Server instances: SQLSERVER_2017_STANDARD (default), SQLSERVER_2017_ENTERPRISE, * SQLSERVER_2017_EXPRESS*, or SQLSERVER_2017_WEB. Corresponds to the JSON property databaseVersion

Returns:

  • (String)


307
308
309
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 307

def database_version
  @database_version
end

#disk_encryption_configurationGoogle::Apis::SqladminV1::DiskEncryptionConfiguration

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



312
313
314
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 312

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



317
318
319
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 317

def disk_encryption_status
  @disk_encryption_status
end

#encrypted_root_passwordString

For internal usage only. The encrypted password. Corresponds to the JSON property encryptedRootPassword NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


323
324
325
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 323

def encrypted_root_password
  @encrypted_root_password
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)


329
330
331
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 329

def etag
  @etag
end

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

The name and status of the failover replica. This property is applicable only to Second Generation instances. Corresponds to the JSON property failoverReplica



335
336
337
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 335

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)


342
343
344
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 342

def gce_zone
  @gce_zone
end

#installed_versionString

installed_version stores the current fully resolved database version including minor version such as MySQL_5.6.50 Corresponds to the JSON property installedVersion

Returns:

  • (String)


348
349
350
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 348

def installed_version
  @installed_version
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)


356
357
358
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 356

def instance_type
  @instance_type
end

#instance_uidString

Uid of the Cloud SQL instance. Used by Pantheon to check instance is created Corresponds to the JSON property instanceUid

Returns:

  • (String)


361
362
363
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 361

def instance_uid
  @instance_uid
end

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

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



366
367
368
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 366

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)


372
373
374
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 372

def ipv6_address
  @ipv6_address
end

#kindString

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

Returns:

  • (String)


377
378
379
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 377

def kind
  @kind
end

#master_instanceGoogle::Apis::SqladminV1::InstanceReference

Reference to another Cloud SQL instance. Corresponds to the JSON property masterInstance



382
383
384
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 382

def master_instance
  @master_instance
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)


387
388
389
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 387

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)


392
393
394
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 392

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)


397
398
399
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 397

def name
  @name
end

#on_premises_configurationGoogle::Apis::SqladminV1::OnPremisesConfiguration

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



402
403
404
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 402

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



407
408
409
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 407

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)


413
414
415
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 413

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)


421
422
423
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 421

def region
  @region
end

#replica_configurationGoogle::Apis::SqladminV1::ReplicaConfiguration

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



426
427
428
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 426

def replica_configuration
  @replica_configuration
end

#replica_instancesArray<Google::Apis::SqladminV1::InstanceReference>

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



431
432
433
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 431

def replica_instances
  @replica_instances
end

#replica_namesArray<String>

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

Returns:

  • (Array<String>)


436
437
438
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 436

def replica_names
  @replica_names
end

#root_passwordString

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

Returns:

  • (String)


441
442
443
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 441

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)


446
447
448
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 446

def satisfies_pzs
  @satisfies_pzs
end

#scheduled_maintenanceGoogle::Apis::SqladminV1::SqlScheduledMaintenance

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



452
453
454
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 452

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)


460
461
462
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 460

def secondary_gce_zone
  @secondary_gce_zone
end

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

Returns:

  • (String)


465
466
467
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 465

def self_link
  @self_link
end

#server_ca_certGoogle::Apis::SqladminV1::SslCert

SslCerts Resource Corresponds to the JSON property serverCaCert



470
471
472
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 470

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)


476
477
478
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 476

def 
  @service_account_email_address
end

#settingsGoogle::Apis::SqladminV1::Settings

Database instance settings. Corresponds to the JSON property settings



481
482
483
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 481

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)


492
493
494
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 492

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>)


497
498
499
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 497

def suspension_reason
  @suspension_reason
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 504

def update!(**args)
  @backend_type = args[:backend_type] if args.key?(:backend_type)
  @connection_name = args[:connection_name] if args.key?(:connection_name)
  @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)
  @encrypted_root_password = args[:encrypted_root_password] if args.key?(:encrypted_root_password)
  @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)
  @installed_version = args[:installed_version] if args.key?(:installed_version)
  @instance_type = args[:instance_type] if args.key?(:instance_type)
  @instance_uid = args[:instance_uid] if args.key?(:instance_uid)
  @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 = args[:master_instance] if args.key?(:master_instance)
  @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_instances = args[:replica_instances] if args.key?(:replica_instances)
  @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