Pesan error Cloud SQL

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:

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:

  • Aplikasi tidak memanggil mysql_close() sebelum keluar.
  • Komunikasi error.
  • Aplikasi mungkin telah tidur lebih dari jumlah detik yang ditentukan dalam `wait_timeout` atau `interactive_timeout` tanpa mengeluarkan permintaan apa pun ke server. Lihat Bagian 5.1.7, Variabel Sistem Server.
  • Aplikasi berakhir tiba-tiba di tengah transfer data.
  • Nilai variabel max_allowed_packet mungkin terlalu kecil atau kueri memerlukan lebih banyak memori daripada yang dialokasikan untuk mysqld. Hal ini dapat diatasi dengan menaikkan flag max_allowed_packet ke jumlah yang jauh lebih besar.
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 dariroot@localhost menjadi root@% atau non-superuser. Lihat Kontrol Akses Objek Tersimpan untuk mengetahui informasi selengkapnya.

Akses ditolak untuk pengguna 'XXX'@'XXX' (menggunakan sandi: XXX) Kemungkinan ada beberapa penyebabnya, termasuk:
  • Nama pengguna (atau kata sandi) salah.
  • Pengguna terhubung dari URL selain @XXX.
  • Pengguna tidak memiliki hak istimewa yang benar untuk database yang mereka coba hubungkan.

Cobalah untuk melakukan hal ini ...

  • Verifikasi nama pengguna dan sandi yang sesuai.
  • Periksa asal koneksi untuk melihat apakah cocok dengan URL dimana pengguna memiliki hak istimewa aksesnya.
  • Periksa pemberian hak istimewa pengguna di database.
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 --force:

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:

  1. Hubungkan ke database (misalnya, menggunakan Cloud Shell) dan login sebagai root.
  2. Jalankan USE mysql;.
  3. Berikan izin berikut menggunakan sintaksis:
    GRANT PERMISSION_1,PERMISSION_2 ON *.* TO 'root' WITH GRANT OPTION;
       
    • SELECT
    • INSERT
    • PERBARUI
    • HAPUS
    • BUAT
    • LEPASKAN
    • MUAT ULANG
    • NONAKTIF
    • PROSES
    • REFERENSI
    • INDEX
    • ALTER
    • TAMPILKAN DATABASE
    • BUAT TABEL SEMENTARA
    • KUNCI TABEL
    • JALANKAN
    • SLAVE REPLIKASI
    • KLIEN REPLIKASI
    • BUAT TAMPILAN
    • TAMPILKAN TAMPILAN
    • BUAT RUTINITAS
    • RUTINITAS ALTER
    • BUAT PENGGUNA
    • ACARA
    • PEMICU
    • BUAT TABLESPACE
  4. Jalankan USE 'Database_Name'; dengan Database_Name adalah tempat database Anda membuat tampilan.
  5. Menjalankan semua tampilan pembuatan dalam sesi dan commit.
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, Illegal Argument, periksa permintaan untuk memastikan setiap argumen diizinkan dan setiap nilai untuk argumen tersebut valid. Untuk semua penyebab lainnya, periksa file log untuk melihat apakah ada informasi lebih lanjut di sana.

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 --force argumen:

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 pg_dump.

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 Authorized Networks entri dari instance Cloud SQL jika memungkinkan. Jika tidak, buat replika tanpa entri Authorized Networks apapun.

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 sp_helpdb untuk mendapatkan informasi mengenai database.

Pertimbangkan solusi berikut:

  • Perluas kapasitas disk secara manual atau mengurangi data dalam database.
  • Pastikan Automatic storage increase diaktifkan untuk instance database.
  • Tambahkan lebih banyak grup file dan pindahkan data ke dalamnya.
  • Pastikan bahwa pertumbuhan tidak dibatasi. Gunakan perintah ALTER DATABASE untuk mengaktifkan pertumbuhan otomatis, jika belum diaktifkan, dan untuk meningkatkan ukuran file maksimum.
  • Kelola file tempdb. Gunakan DBCC OPENTRAN dan DBCC SQLPERFperintah untuk memeriksa transaksi terbuka yang dapat menyebabkan file tempdb atau log transaksi bertumbuh.
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:

  • Ukuran rentang IP yang dialokasikan untuk private service connect lebih kecil dari /24.
  • Ukuran rentang IP yang dialokasikan untuk private service connect terlalu kecil untuk jumlah instance Cloud SQL.
  • Persyaratan ukuran rentang IP yang dialokasikan akan lebih besar jika instance dibuat dalam beberapa region. Lihat ukuran rentang yang dialokasikan

Untuk setiap skenario yang tercantum sebelumnya, Anda dapat memilih untuk memperluas rentang IP yang ada atau mengalokasikan rentang IP tambahan ke 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 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 mysqldump dengan opsi max_allowed_packet.

Untuk mempelajari lebih lanjut cara menggunakan tanda mysqldump untuk migrasi impor terkelola, lihat Flag sinkronisasi awal yang diizinkan dan default

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 penambahan kuota dari konsolGoogle Cloud atau mengedit instance untuk mengupgradenya ke ukuran disk yang lebih besar.

Error internal.