Administradores de bases de datos

71
Cómo convertir fácilmente tablas utf8 a utf8mb4 en MySQL 5.5

Tengo una base de datos que ahora necesita admitir caracteres de 4 bytes (chino). Afortunadamente ya tengo MySQL 5.5 en producción. Así que me gustaría hacer todas las colaciones que son utf8_bin a utf8mb4_bin. Creo que no hay pérdida / ganancia de rendimiento con este cambio que no sea un poco...

71
UNIR un subconjunto de la tabla de destino

Estoy tratando de usar una MERGEdeclaración para insertar o eliminar filas de una tabla, pero solo quiero actuar en un subconjunto de esas filas. La documentación para MERGEtiene una advertencia bastante redactada: Es importante especificar solo las columnas de la tabla de destino que se...

70
¿Cómo usar psql sin solicitud de contraseña?

Escribí un script para REINDEXindexar en una base de datos. Aqui esta uno de ellos: echo -e "\nreindex for unq_vbvdata_vehicle started at: `date "+%F %T"`" >> ${LOG_FILE} psql -U ${USERNAME} -h ${HOSTNAME} -d ${DBNAME} -c "REINDEX INDEX scm_main.unq_vbvdata_vehicle;" if [[ ${?} -eq 0 ]];...

67
La mejor práctica entre usar JOIN IZQUIERDO o NO EXISTE

¿Existe alguna práctica recomendada entre el uso de un formato LEFT JOIN o NOT EXISTS? ¿Cuál es el beneficio de usar uno sobre el otro? Si no hay ninguno, ¿cuál debería preferirse? SELECT * FROM tableA A LEFT JOIN tableB B ON A.idx = B.idx WHERE B.idx IS NULL SELECT * FROM tableA A WHERE NOT...

64
Index Seek vs Index Scan

Al observar un plan de ejecución de una consulta de ejecución lenta, noté que algunos de los nodos son búsqueda de índice y algunos de ellos son exploración de índice. ¿Cuál es la diferencia entre una búsqueda de índice y una exploración de índice? ¿Cuál funciona mejor? ¿Cómo elige SQL uno...