

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# MariaDB di referensi Amazon RDS SQL
<a name="Appendix.MariaDB.SQLRef"></a>

Pada bagian berikut, Anda dapat menemukan deskripsi prosedur tersimpan sistem yang tersedia untuk instans Amazon RDS yang menjalankan mesin DB MariaDB.

Anda dapat menggunakan prosedur tersimpan sistem yang tersedia untuk instans DB MySQL dan instans DB MariaDB. Prosedur tersimpan ini didokumentasikan di [RDSuntuk referensi prosedur SQL tersimpan saya](Appendix.MySQL.SQLRef.md). Instans DB MariaDB mendukung semua prosedur tersimpan, kecuali untuk `mysql.rds_start_replication_until` dan `mysql.rds_start_replication_until_gtid`.

Selain itu, prosedur tersimpan sistem berikut hanya didukung untuk instans DB Amazon RDS yang menjalankan MariaDB:
+ [mysql.rds\$1replica\$1status](mysql_rds_replica_status.md)
+ [mysql.rds\$1set\$1external\$1master\$1gtid](mysql_rds_set_external_master_gtid.md)
+ [mysql.rds\$1kill\$1query\$1id](mysql_rds_kill_query_id.md)
+ [mysql.rds\$1execute\$1operation](mysql_rds_execute_operation.md)

# mysql.rds\$1replica\$1status
<a name="mysql_rds_replica_status"></a>

Menunjukkan status replikasi replika baca MariaDB.

Panggil prosedur ini pada replika baca untuk menampilkan informasi status parameter penting utas replika.

## Sintaks
<a name="mysql_rds_replica_status-syntax"></a>

```
CALL mysql.rds_replica_status;
```

## Catatan penggunaan
<a name="mysql_rds_replica_status-usage-notes"></a>

Prosedur ini hanya didukung untuk instans DB MariaDB yang menjalankan MariaDB versi 10.5 dan yang lebih tinggi.

Prosedur ini setara dengan perintah `SHOW REPLICA STATUS`. Perintah ini tidak didukung untuk MariaDB versi 10.5 dan instans DB yang lebih tinggi.

Dalam MariaDB versi sebelumnya, perintah `SHOW SLAVE STATUS` yang setara memerlukan hak istimewa `REPLICATION SLAVE`. Dalam MariaDB versi 10.5 dan yang lebih tinggi, diperlukan hak istimewa `REPLICATION REPLICA ADMIN`. Untuk melindungi manajemen RDS untuk MariaDB 10.5 dan instans DB yang lebih tinggi, hak istimewa baru ini tidak diberikan kepada pengguna master RDS.

## Contoh
<a name="mysql_rds_replica_status-examples"></a>

Contoh berikut menunjukkan status replika baca MariaDB:

```
call mysql.rds_replica_status;
```

Responsnya terlihat seperti berikut:

```
*************************** 1. row ***************************
                Replica_IO_State: Waiting for master to send event
                     Source_Host: XX.XX.XX.XXX
                     Source_User: rdsrepladmin
                     Source_Port: 3306
                   Connect_Retry: 60
                 Source_Log_File: mysql-bin-changelog.003988
             Read_Source_Log_Pos: 405
                  Relay_Log_File: relaylog.011024
                   Relay_Log_Pos: 657
           Relay_Source_Log_File: mysql-bin-changelog.003988
              Replica_IO_Running: Yes
             Replica_SQL_Running: Yes
                 Replicate_Do_DB:
             Replicate_Ignore_DB:
              Replicate_Do_Table:
          Replicate_Ignore_Table: mysql.rds_sysinfo,mysql.rds_history,mysql.rds_replication_status
         Replicate_Wild_Do_Table:
     Replicate_Wild_Ignore_Table:
                      Last_Errno: 0
                      Last_Error:
                    Skip_Counter: 0
             Exec_Source_Log_Pos: 405
                 Relay_Log_Space: 1016
                 Until_Condition: None
                  Until_Log_File:
                   Until_Log_Pos: 0
              Source_SSL_Allowed: No
              Source_SSL_CA_File:
              Source_SSL_CA_Path:
                 Source_SSL_Cert:
               Source_SSL_Cipher:
                  Source_SSL_Key:
           Seconds_Behind_Master: 0
   Source_SSL_Verify_Server_Cert: No
                   Last_IO_Errno: 0
                   Last_IO_Error:
                  Last_SQL_Errno: 0
                  Last_SQL_Error:
     Replicate_Ignore_Server_Ids:
                Source_Server_Id: 807509301
                  Source_SSL_Crl:
              Source_SSL_Crlpath:
                      Using_Gtid: Slave_Pos
                     Gtid_IO_Pos: 0-807509301-3980
         Replicate_Do_Domain_Ids:
     Replicate_Ignore_Domain_Ids:
                   Parallel_Mode: optimistic
                       SQL_Delay: 0
             SQL_Remaining_Delay: NULL
       Replica_SQL_Running_State: Reading event from the relay log
              Replica_DDL_Groups: 15
Replica_Non_Transactional_Groups: 0
    Replica_Transactional_Groups: 3658
1 row in set (0.000 sec)

Query OK, 0 rows affected (0.000 sec)
```

# mysql.rds\$1set\$1external\$1master\$1gtid
<a name="mysql_rds_set_external_master_gtid"></a>

Mengonfigurasi replikasi berbasis GTID dari instans MariaDB yang berjalan secara eksternal ke Amazon RDS ke instans DB MariaDB. Prosedur tersimpan ini hanya didukung jika instans MariaDB eksternal memiliki versi 10.0.24 atau lebih tinggi. Saat menyiapkan replikasi yang salah satu atau kedua instansnya tidak mendukung pengidentifikasi transaksi global (GTID) MariaDB, gunakan [](mysql-stored-proc-replicating.md#mysql_rds_set_external_master).

Menggunakan GTID untuk replikasi menyediakan fitur keselamatan jatuh yang tidak ditawarkan oleh replikasi log biner, jadi kami menyarankan Anda menggunakannya saat fitur ini didukung dalam replikasi. 

## Sintaks
<a name="mysql_rds_set_external_master_gtid-syntax"></a>

 

```
CALL mysql.rds_set_external_master_gtid(
  host_name
  , host_port
  , replication_user_name
  , replication_user_password
  , gtid
  , ssl_encryption
);
```

## Parameter
<a name="mysql_rds_set_external_master_gtid-parameters"></a>

 *host\$1name*   
String. Nama host atau alamat IP instans MariaDB yang berjalan secara eksternal ke Amazon RDS yang akan menjadi instans sumber.

 *host\$1port*   
Integer. Port yang digunakan oleh instans MariaDB yang berjalan secara eksternal ke Amazon RDS yang akan dikonfigurasi sebagai instans sumber. Jika konfigurasi jaringan Anda menyertakan replikasi port SSH yang mengonversi nomor port, tentukan nomor port yang diekspos oleh SSH.

 *replication\$1user\$1name*   
String. ID pengguna dengan izin `REPLICATION SLAVE` dalam instans DB MariaDB yang akan dikonfigurasi sebagai replika baca.

 *replication\$1user\$1password*   
String. Kata sandi ID pengguna yang ditentukan dalam `replication_user_name`.

 *gtid*   
String. ID transaksi global pada instans sumber untuk memulai replikasi.  
Anda dapat menggunakan `@@gtid_current_pos` untuk mendapatkan GTID saat ini jika instans sumber telah dikunci saat Anda mengonfigurasi replikasi, sehingga log biner tidak berubah di antara titik-titik ketika Anda mendapatkan GTID dan ketika replikasi dimulai.  
Atau, jika Anda menggunakan `mysqldump` versi 10.0.13 atau yang lebih tinggi untuk mengisi instans replika sebelum memulai replikasi, Anda dapat mendapatkan posisi GTID di output menggunakan opsi `--master-data` atau `--dump-slave`. Jika Anda tidak menggunakan `mysqldump` versi 10.0.13 atau yang lebih tinggi, Anda dapat menjalankan `SHOW MASTER STATUS` atau menggunakan opsi `mysqldump` yang sama untuk mendapatkan nama dan posisi file log biner, lalu mengonversinya ke GTID dengan menjalankan `BINLOG_GTID_POS` di luar instans MariaDB:  

```
SELECT BINLOG_GTID_POS('<binary log file name>', <binary log file position>);
```
Untuk informasi selengkapnya tentang implementasi GTID MariaDB, buka [ID transaksi global](http://mariadb.com/kb/en/mariadb/global-transaction-id/) dalam dokumentasi MariaDB.

 *ssl\$1encryption*   
Nilai yang menentukan apakah enkripsi Secure Socket Layer (SSL) digunakan pada koneksi replikasi. 1 menentukan untuk menggunakan enkripsi SSL, 0 menentukan untuk tidak menggunakan enkripsi. Default-nya adalah 0.  
Opsi `MASTER_SSL_VERIFY_SERVER_CERT` tidak didukung. Opsi ini diatur ke 0, yang berarti koneksi dienkripsi, tetapi sertifikat tidak diverifikasi.

## Catatan penggunaan
<a name="mysql_rds_set_external_master_gtid-usage-notes"></a>

Prosedur `mysql.rds_set_external_master_gtid` harus dijalankan oleh pengguna master. Prosedur ini harus dijalankan pada instans DB MariaDB yang Anda konfigurasikan sebagai replika instans MariaDB yang berjalan secara eksternal ke Amazon RDS. Sebelum menjalankan `mysql.rds_set_external_master_gtid`, Anda harus sudah mengonfigurasi instans MariaDB yang berjalan secara eksternal ke Amazon RDS sebagai instans sumber. Untuk informasi selengkapnya, lihat [Mengimpor data ke Amazon RDS untuk instans DB Amazon RDS for MariaDB](MariaDB.Procedural.Importing.md).

**Awas**  
Jangan gunakan `mysql.rds_set_external_master_gtid` untuk mengelola replikasi antara dua instans DB Amazon RDS. Gunakan hanya saat mereplikasi instans MariaDB yang berjalan secara eksternal ke RDS. Untuk informasi tentang pengelolaan replikasi antara instans DB Amazon RDS, lihat [Menggunakan replika baca instans DB](USER_ReadRepl.md).

Setelah memanggil `mysql.rds_set_external_master_gtid` ​​untuk mengonfigurasi instans DB Amazon RDS sebagai replika baca, Anda dapat memanggil [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) pada replika baca untuk memulai proses replikasi. Anda dapat memanggil [](mysql-stored-proc-replicating.md#mysql_rds_reset_external_master) ​​untuk menghapus konfigurasi replika baca.

Saat `mysql.rds_set_external_master_gtid` dipanggil, Amazon RDS mencatat waktu, pengguna, dan tindakan "set master" di tabel `mysql.rds_history` dan `mysql.rds_replication_status`.

## Contoh
<a name="mysql_rds_set_external_master_gtid-examples"></a>

Ketika dijalankan pada instans DB MariaDB, contoh berikut mengonfigurasinya sebagai replika instans MariaDB yang berjalan secara eksternal ke Amazon RDS.

```
call mysql.rds_set_external_master_gtid ('Sourcedb.some.com',3306,'ReplicationUser','SomePassW0rd','0-123-456',0); 
```

# mysql.rds\$1kill\$1query\$1id
<a name="mysql_rds_kill_query_id"></a>

Mengakhiri kueri yang berjalan terhadap server MariaDB untuk menghentikan kueri yang berjalan lama atau bermasalah. Anda dapat mengidentifikasi ID kueri dan secara efektif menghentikan kueri tertentu untuk mengatasi masalah kinerja dan mempertahankan operasi database yang optimal.

## Sintaksis
<a name="mysql_rds_kill_query_id-syntax"></a>

```
CALL mysql.rds_kill_query_id(queryID);
```

## Parameter
<a name="mysql_rds_kill_query_id-parameters"></a>

 *queryID*   
Integer. Identitas kueri yang akan diakhiri.

## Catatan penggunaan
<a name="mysql_rds_kill_query_id-usage-notes"></a>

Untuk menghentikan kueri yang berjalan pada server MariaDB, gunakan prosedur `mysql.rds_kill_query_id` dan teruskan ID kueri tersebut. Untuk mendapatkan ID kueri, kueri MariaDB [Tabel PROCESSLIST skema informasi](http://mariadb.com/kb/en/mariadb/information-schema-processlist-table/), seperti yang ditunjukkan berikut ini:

```
SELECT USER, HOST, COMMAND, TIME, STATE, INFO, QUERY_ID FROM 
                INFORMATION_SCHEMA.PROCESSLIST WHERE USER = '<user name>';
```

Koneksi ke server MariaDB dipertahankan.

## Contoh
<a name="mysql_rds_kill_query_id-examples"></a>

Contoh berikut mengakhiri kueri dengan ID kueri 230040:

```
call mysql.rds_kill_query_id(230040); 
```

# mysql.rds\$1execute\$1operation
<a name="mysql_rds_execute_operation"></a>

Menjalankan operasi InnoDB untuk mengelola status kumpulan buffer dan tablespace sementara. Prosedur ini dapat digunakan untuk mengontrol operasi InnoDB secara dinamis seperti dumping dan loading status kumpulan buffer atau memotong ruang meja sementara.

## Sintaks
<a name="mysql_rds_execute_operation-syntax"></a>

```
CALL mysql.rds_execute_operation(operation);
```

## Parameter
<a name="mysql_rds_execute_operation-parameters"></a>

 *operasi*   
String. Operasi InnoDB untuk mengeksekusi. Nilai yang valid adalah:  
+ *innodb\$1buffer\$1pool\$1dump\$1now - Operasi yang membuang status* kumpulan buffer saat ini.
+ *innodb\$1buffer\$1pool\$1load\$1now - Operasi* yang memuat status kumpulan buffer yang disimpan.
+ *innodb\$1buffer\$1pool\$1load\$1abort - Operasi yang membatalkan operasi beban kumpulan* buffer.
+ *innodb\$1truncate\$1temporary\$1tablespace\$1now - Operasi yang memotong tablespace sementara*.

## Catatan penggunaan
<a name="mysql_rds_execute_operation-usage-notes"></a>

Prosedur ini hanya didukung untuk instance MariaDB DB yang menjalankan MariaDB versi 11.8 dan yang lebih tinggi.

Selama eksekusi, logging biner dinonaktifkan sementara untuk mencegah replikasi perintah administratif ini.

Prosedur ini mempertahankan jejak audit dengan mencatat semua operasi dalam [https://mariadb.com/docs/server/security/securing-mariadb/securing-mariadb-encryption/data-in-transit-encryption/securing-connections-for-client-and-server#requiring-tls](https://mariadb.com/docs/server/security/securing-mariadb/securing-mariadb-encryption/data-in-transit-encryption/securing-connections-for-client-and-server#requiring-tls)tabel.

## Contoh
<a name="mysql_rds_execute_operation-examples"></a>

Contoh berikut menunjukkan penyusutan tablespace sementara menggunakan: `mysql.rds_execute_operation`

Untuk memeriksa ukuran tablespace sementara saat ini, jalankan kueri berikut:

```
      
SELECT FILE_SIZE FROM information_schema.innodb_sys_tablespaces WHERE name LIKE 'innodb_temporary';
+------------+
| FILE_SIZE  |
+------------+
| 6723469312 |  -- 6.3 GB
+------------+
```

Saat Anda menjatuhkan tabel sementara, itu tidak mengurangi penggunaan penyimpanan di ruang tabel global. Untuk mengurangi ukuran tablespace global, jalankan `mysql.rds_execute_operation` perintah untuk mengecilkan tablespace sementara.

```
 
CALL mysql.rds_execute_operation('innodb_truncate_temporary_tablespace_now');
Query OK, 2 rows affected (0.004 sec)
```

Setelah Anda menjalankan prosedur, verifikasi bahwa ruang telah direklamasi.

```
SELECT FILE_SIZE FROM information_schema.innodb_sys_tablespaces WHERE name LIKE 'innodb_temporary';
+-----------+
| FILE_SIZE |
+-----------+
|  12582912 |  -- 12 MB
+-----------+
```

**catatan**  
 Operasi menyusut mungkin memakan waktu, tergantung pada ukuran ruang meja sementara dan beban kerja saat ini.

**penting**  
Ruang meja sementara menyusut hanya ketika semua tabel sementara yang berkontribusi pada ukurannya tidak lagi digunakan. Kami menyarankan Anda menjalankan prosedur ini ketika tidak ada ruang tabel sementara yang aktif pada instance. 