Halaman ini membahas beberapa pesan error yang ditemukan di Cloud SQL.
Ringkasan
Pesan error di Cloud SQL berasal dari banyak sumber dan muncul di banyak tempat. Beberapa pesan error berasal dari database itu sendiri, sebagian dari layanan Cloud SQL, sebagian dari aplikasi klien, dan sebagian lagi ditampilkan dengan panggilan ke Cloud SQL Admin API.
Halaman ini berisi beberapa error paling umum yang terlihat di Cloud SQL. Jika tidak menemukan kode atau pesan error yang dicari di sini, Anda dapat mencari materi referensi sumber di sini:
Jika tidak menemukan materi referensi untuk pesan error yang Anda lihat, Anda juga dapat menelusuri di beberapa tempat berikut yang mungkin memiliki pengalaman relevan bagi pengguna lain:
- Pertanyaan Cloud SQL di Stack Overflow
- Issue tracker publik untuk Cloud SQL
- Pertukaran Stack DBA
- Grup diskusi Cloud SQL
- Komunitas Google Cloud Slack
- Google Cloud di Reddit
Error operasional
A | B | C | D | E | F | G | I | L | M | N | O | P | Q | R | S | T | U | W
Pesan error | Pemecahan masalah |
---|---|
Koneksi xxx ke db: DB_NAME dibatalkan. | Aplikasi tidak mengakhiri koneksi dengan benar.
Periksa kondisi berikut:
|
Akses ditolak; Anda memerlukan (setidaknya salah satu) hak istimewa SUPER untuk operasi ini | Mungkin ada tampilan, fungsi, atau prosedur dalam database sumber
yang mereferensikan DEFINER dengan cara yang tidak didukung
oleh Cloud SQL.
Perbarui definisi dalam data bases ekstenal, seperti
dari |
Akses ditolak untuk pengguna 'XXX'@'XXX' (menggunakan sandi: XXX) | Kemungkinan ada beberapa penyebabnya, termasuk:
Cobalah untuk melakukan hal ini ...
|
Rentang IP yang dialokasikan tidak ditemukan di jaringan. | Peering VPC tidak diperbaharui setelah rentang yang dialokasikan diubah
atau dihapus.
Anda perlu
mengubah koneksi pribadi. Gunakan perintah berikut, dan pastikan
untuk menggunakan argumen gcloud services vpc-peerings update \ --network=VPC_NETWORK \ --ranges=ALLOCATED_RANGES \ --service=servicenetworking.googleapis.com \ --force |
Perintah APA PUN ditolak kepada pengguna 'root'@'%' untuk tabel ... | Pengguna tidak memiliki semua izin yang diperlukan untuk operasi ini.
Coba langkah ini:
|
Pesan error | Pemecahan masalah |
---|---|
Permintaan buruk. | Pesan ini dapat disebabkan oleh banyak hal. Illegal Argument adalah salah satu
yang paling umum. Dalam hal ini, permintaan menggunakan argumen yang salah atau nilai yang tidak valid. Untuk penyebab lainnya, pesan error mungkin berisi petunjuk yang berguna.
Untuk itu, |
Pesan error | Pemecahan masalah |
---|---|
Tidak dapat memodifikasi rentang yang dialokasikan di CreateConnection. Mohon gunakan UpdateConnection. | Peering VPC tidak diperbarui setelah rentang yang dialokasikan diubah atau dihapus.
Anda perlu memodifikasi koneksi pribadi.
Gunakan perintah berikut, dan pastikan untuk menggunakan gcloud services vpc-peerings update \ --network=VPC_NETWORK \ --ranges=ALLOCATED_RANGES \ --service=servicenetworking.googleapis.com \ --force |
Reset koneksi oleh teman sekelas. | Jika Anda mencoba untuk menjalankan ekspor dan Cloud Storage tidak menerima data apa pun dalam jangka waktu tertentu, koneksi akan direset. Coba ekspor manual menggunakan |
Constraints/sql.restrictAuthorizedNetworks. | Operasi clone diblokir oleh konfigurasi Authorized Networks . Authorized Networks
dikonfigurasi untuk alamat IP publik di bagian Konektivitas pada
konsol Google Cloud, dan cloning tidak diizinkan karena
pertimbangan keamanan.
Hapus semua |
Tidak dapat mengalokasi halaman baru untuk database database_name
karena kapasitas disk pada grup file tidak mencukupi.PRIMARY . |
Grup PRIMARY file, yang merupakan grup file utama dan default dalam
database, telah kehabisan kapasitas.
Gunakan perintah Pertimbangkan solusi berikut:
|
Pesan error | Pemecahan masalah |
---|---|
Database user tidak ada. |
gcloud sql connect --user hanya bekerja dengan pengguna
postgres default.
Terhubung dengan pengguna default, lalu ubah pengguna. |
Disk penuh. | Ukuran disk instance utama dapat penuh selama pembuatan replika.
Edit instance utama untuk mengupgradenya ke ukuran disk yang lebih besar. |
Pesan error | Pemecahan masalah |
---|---|
Gagal membuat subnetwork. | Tidak ada lagi alamat yang tersedia dalam rentang IP.
Tidak dapat menemukan blok gratis dalam rentang IP yang dialokasikan. Mohon alokasikan rentang baru untuk penyedia layanan ini. Tidak ada lagi alamat yang tersedia dalam rentang IP yang dialokasikan. Pertimbangkan kemungkinan skenario berikut:
Untuk setiap skenario di atas, Anda dapat memilih untuk memperluas rentang IP yang ada atau alokasikan rentang IP tambahanke private service connection. Jika Anda mengalokasikan rentang baru, berhati-hatilah agar tidak membuat alokasi yang ada. Setelah membuat rentang IP baru, perbarui peering VPC dengan perintah berikut: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com --ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \ --network=VPC_NETWORK --project=PROJECT_ID \ --force Jika Anda memperluas alokasi yang ada, berhati-hatilah untuk meningkatkan rentang alokasi saja dan tidak menguranginya. Misalnya, jika alokasi asli adalah 10.0.10.0/24, buat alokasi baru setidaknya 10.0.10.0/23. Secara umum, jika memulai dari alokasi /24, mengurangi/mask sebanyak 1 untuk setiap kondisi (jenis grup instance tambahan, region tambahan) adalah aturan praktis yang baik. Misalnya, jika mencoba membuat kedua jenis grup instance pada alokasi yang sama, beralih dari /24 ke /23 sudah cukup. Setelah memperluas rentang IP yang ada, update peering vpc dengan perintah berikut: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID \ --force |
Pesan error | Pemecahan masalah |
---|---|
(gcloud.sql.connect) Sepertinya klien Anda tidak memiliki konektivitas ipv6 dan instance database tidak memiliki alamat ipv4. | Anda mencoba terhubung ke instance IP pribadi menggunakan Cloud Shell.
Menghubungkan dari Cloud Shell ke instance hanya dengan alamat IP pribadi yang saat ini tidak didukung. |
Dapatkan paket yang lebih besar dari max_allowed_packet byte saat
membuang tabel. |
Paket tersebut lebih besar dari yang diizinkan oleh setelan.
Gunakan Untuk mempelajari lebih lanjut cara menggunakan tanda |
Pesan error | Pemecahan masalah |
---|---|
InnoDB: Menulis ke file ./ibtmp1 gagal saat offset XXXX, YYYY byte seharusnya telah ditulis, hanya 0 yang ditulis. | Instance ini mencapai batas ketat saat melakukan pencadangan otomatis.
Periksa apakah OS dan sistem file Anda mendukung file dengan ukuran tersebut. Periksa apakah disk tidak penuh atau kehabisan kuota disk. Anda dapat meminta peningkatan kuota dari konsol Google Cloud atau edit instance untuk mengupgradenya ke ukuran disk yang lebih besar. |
Error internal. | Project tersebut mungkin tidak memiliki akun layanan Service Networking
yang diperlukan untuk fitur ini.
Untuk memperbaiki izin layanan, nonaktifkan
|
Permintaan tidak valid: Konfigurasi Service Networking yang salah untuk instance. | Service Networking API tidak diaktifkan dalam project.
Aktifkan |
Pesan error | Pemecahan masalah |
---|---|
Tabel metadata dikunci. | Kueri, proses, atau transaksi lain memblokir kueri Anda dan mengunci
tabel.
Temukan proses yang mengunci tabel dan menghentikannya:
|
Pesan error | Pemecahan masalah |
---|---|
Pengaitan jaringan gagal. | Service Networking API tidak diaktifkan dalam project.
Aktifkan |
Pesan error | Pemecahan masalah |
---|---|
Operasi gagal karena operasi lain sudah berlangsung. | Sebagian besar operasi di Cloud SQL bersifat sinkron. Anda hanya
dapat menjalankan satu per satu.
Tunggu operasi sebelumnya selesai sebelum memulai yang lainnya. |
Operasi tidak valid untuk instance ini. | Error ini ditampilkan dari panggilan API ke instances.restoreBackup ,
yang berarti Anda tidak dapat memulihkan dari cadangan ke instance dengan ukuran penyimpanan
(XX GB) yang lebih kecil dari ukuran cadangan (YY GB).
Edit instance target untuk meningkatkan ukuran penyimpanannya. |
Pesan error | Pemecahan masalah |
---|---|
Autentikasi sandi gagal untuk pengguna "postgres". | Saat Anda membuat instance Cloud SQL untuk PostgreSQL yang baru, pengguna admin default postgres akan dibuat, tetapi bukan sandinya.
Anda harus
menyetel sandi untuk pengguna ini sebelum pengguna tersebut dapat login. |
Pesan error | Pemecahan masalah |
---|---|
Quota exceeded. | Anda telah mencapai batas kuota per menit atau harian. Tinjau
kuota dan batas untuk Cloud SQL.
Minta peningkatan kuota Anda dari konsol Google Cloud. |
Pesan error | Pemecahan masalah |
---|---|
Slot koneksi yang tersisa telah direservasi. | Koneksi maksimum yang diizinkan telah tercapai.
Tingkatkan nilai flag |
Permintaan tidak memiliki kunci API yang valid. | Anda mungkin tidak memiliki file JSON kunci akun layanan yang valid atau mungkin
tidak disimpan di lokasi yang diharapkan.
Verifikasi bahwa Anda memiliki file JSON kunci akun layanan yang valid di
lokasi yang disimpan dalam variabel lingkungan |
Pesan error | Pemecahan masalah |
---|---|
Kunci yang ditentukan terlalu panjang; panjang maksimal kunci adalah 767 byte. | Instance utama eksternal mungkin memiliki variabel innodb_large_prefix yang telah disetel.
Setel flag |
Error SSL: padding tidak valid. | Error sertifikat server.
Buat sertifikat server baru dan rotasikan. |
Terjadi error sistem. |
Cobalah untuk melakukan hal ini ...
|
Pesan error | Pemecahan masalah |
---|---|
Definisi tabel berubah. | Selama proses ekspor, perubahan terjadi pada tabel.
Transaksi dump dapat gagal jika Anda menggunakan pernyataan berikut selama operasi ekspor:
Hapus salah satu pernyataan berikut dari operasi dump. |
Ukuran file sementara melampaui temp_file_limit. | Flag temp_file_limit disetel terlalu rendah untuk penggunaan database Anda.
Perbesar ukuran |
Tabel db.table tidak ada | Jika satu atau beberapa tabel InnoDB menghilang setelah MySQL dimulai dan
log error MySQL menampilkan peringatan berikut secara bersamaan, hal ini disebabkan oleh
kunci asing dan kolom kunci yang direferensi tidak sinkron.
[Warning] InnoDB: Load table db.table failed, the table has missing foreign key indexes. Turn off 'foreign_key_checks' and try again. [Warning] InnoDB: Cannot open table db/table from the internal data dictionary of InnoDB though the .frm file for the table exists. See InnoDB troubleshooting for more information. Setelah database dimulai ulang, MySQL perlu memuat tabel ke dalam cache kamus InnoDB pada akses pertama. Jika mendeteksi perbedaan, akses ke tabel tersebut akan diblokir. mysql> select * from db.table; ERROR 1146 (42S02): Table db.table doesn't exist Dengan menonaktifkan Ketidakcocokan kunci asing harus diperbaiki untuk menghindari masalah lebih lanjut.
|
(Waktu tunggu) selama ekspor. | Format CSV dan SQL melakukan ekspor secara berbeda. Format SQL menyertakan seluruh
database dan mungkin akan memerlukan waktu lebih lama untuk menyelesaikannya.
Gunakan format CSV dan jalankan beberapa tugas ekspor yang lebih kecil untuk mengurangi ukuran dan panjang setiap operasi. |
Terlalu banyak koneksi. | Menyetel nilai flag max_connections yang terlalu tinggi dapat menyebabkan error
ini. Hal ini juga dapat disebabkan oleh pengaktifan flag yang tidak berurutan.
Turunkan nilai flag |
Pesan error | Pemecahan masalah |
---|---|
Tidak diizinkan untuk terhubung. | Terdapat banyak penyebab karena otorisasi terjadi di berbagai level:
Cobalah untuk melakukan hal ini ...
|
Tabel COLUMN_STATISTICS yang tidak dikenal dalam information_schema. |
Hal ini terjadi jika Anda menggunakan biner mysqldump dari MySQL 8.0 untuk membuang
data dari database MySQL 5.7 dan mengimpor ke database MySQL 8.0.
Jika Anda membuang data dari database MySQL 5.7 dan mengimpor ke database MySQL 8.0,
pastikan untuk menggunakan biner |
Pesan error | Pemecahan masalah |
---|---|
x509: sertifikat tidak valid untuk nama apa pun. | Masalah umum:
Cloud SQL Proxy Dialer saat ini tidak kompatibel dengan Go 1.15.
Sampai diperbaiki, lihat diskusi ini di GitHub, yang menyertakan solusi. |
error tidak diketahui
Tabel berikut menunjukkan beberapa kasus umum saat Unknown Error
dapat terjadi, dan mencantumkan solusi tertentu yang berlaku. Namun, ini bukanlah
daftar yang lengkap. Jika Anda tidak menemukan masalah di dalam tabel, periksa dengan
issue tracker publik untuk Cloud SQL.
Jika Anda tidak menemukan masalah di sana, pertimbangkan untuk
mengirimkan laporan, atau meninjau
opsi dukungan lainnya.
Operasi | Kemungkinan masalah... | Hal-hal yang perlu dicoba: |
---|---|---|
Pengguna ditambahkan | Jika pengguna sudah ada dalam database, error ini dapat terjadi saat Anda mencoba menambahkannya. | Periksa untuk memastikan pengguna belum ada dalam database. |
Cadangan | Jika Anda melihat hal ini selama pencadangan otomatis atau manual, kemungkinan disk instance penuh. | Jika ukuran file sementara menggunakan terlalu banyak ruang, Anda dapat memulai ulang instance untuk menghapus file dan mengosongkan ruang disk. Jika tidak, Anda mungkin perlu mengupgrade instance Anda ke ukuran disk yang lebih besar. |
Clone | Hal ini dapat terjadi jika kekurangan resource di zona terpilih. | Coba zona lain di region tersebut, atau tunggu dan coba lagi nanti. |
Buat instance |
|
|
Ekspor | Jika Anda melihat pesan ini saat mencoba mengekspor database ke bucket Cloud Storage, transfer mungkin gagal karena masalah bandwidth. | Instance Cloud SQL mungkin berada di region yang berbeda dengan bucket Cloud Storage. Membaca dan menulis data dari satu benua ke benua lain melibatkan banyak penggunaan jaringan, dan dapat menyebabkan masalah terputus-putus seperti ini. |
Failover (otomatis) | Operasi failover otomatis dapat menghasilkan pesan error ini saat layanan mendeteksi bahwa instance utama masih responsif. | Dalam kasus ini, tidak ada yang perlu dilakukan. Failover tidak akan terjadi karena tidak diperlukan. |
Impor | File impor dapat berisi pernyataan yang memerlukan peran superuser. | Edit file tersebut untuk menghapus pernyataan apa pun yang memerlukan peran superuser. |
Cloud SQL juga menggunakan beberapa biner pihak ketiga (misalnya,
mysqld
), yang dapat menghasilkan pesan error tidak dikenal. Error tersebut bersifat
internal untuk biner pihak ketiga dan berada di luar cakupan Cloud SQL.
Namun, terkadang error yang lebih spesifik dapat ditemukan di
file log Cloud SQL pada waktu yang hampir
bersamaan.
Selain itu, terkadang kode error tidak diketahui. Dalam hal ini,
pesan lengkapnya dapat berupa Unknown Error Code
.