We migrated a service from GCP App Engine to Cloud Run. This service is connected to Cloud SQL.

and its parameters are:
- max requests per container: 1
- min instances: 0
- max instances: 200
After receiving spikes, we have experienced this error multiple times:
Cloud SQL connection failed. Please see https://cloud.google.com/sql/docs/mysql/connect-overview for additional details: googleapi: Error 429: Quota exceeded for quota metric 'Queries' and limit 'Queries per minute per user' of service 'sqladmin.googleapis.com' for consumer 'project_number:370240628xxx'., rateLimitExceeded
The quota Queries per minute per user in Cloud SQL Admin API is set to 180. So this is obviously the point of failure.
I found out that the quota limit is hit due to the way how Cloud Run is connected to the Cloud SQL instance. As this link says:
The native connection leverages the Cloud SQL Auth proxy which in turns makes requests to the Cloud SQL Admin API. This API - like all GCP APIs - has throttling quotas which will prevent containers from starting once reached.
The tutorial on the same website suggests using VPC connector instead of the normal Cloud SQL connection. But I've seen Google's docs and other stackoverflow posts suggesting adding quotaUser parameter somehow.
What would be the optimal solution? I would normally go for the VPC but since that is a paid service, I try to avoid that obviously. Since I already pay for Cloud Run and Cloud SQL, I expect those two to be connected without issues and additional costs.
Thank you for all your tips and help!