Optimización del tipo de datos MySQL

Directorio

Selección de tipo de datos

int tipo almacenamiento tiempo-tiempo conversión

Crear tabla

Importar datos

Obtener datos

Almacenamiento de direcciones IP

Crear tabla 

Importar datos

Convertir el resultado a una dirección IP


 

Selección de tipo de datos


1. Use el tipo de datos más pequeño que pueda guardar sus datos. (Datos de tipo de tiempo: puede usar el tipo varchar, puede usar el tipo int, también puede usar el tipo de marca de tiempo)
2. Use un tipo de datos simple, int es más simple que el tipo varchar en el procesamiento de mysql. (El tiempo de almacenamiento de tipo Int es la mejor opción)
3. Utilice no nulo para definir los campos tanto como sea posible. (Debido a las características de innodb, el valor de nulo requiere almacenamiento adicional en el campo, y también aumentará el costo de E / S y almacenamiento).
4. Intente usar el tipo de texto lo menos posible. Es mejor considerar la tabla cuando sea necesario.

 

 

int tipo almacenamiento tiempo-tiempo conversión

 

Use int para almacenar fecha y hora, y use FROM_UNIXTIME (), UNIX_TIMESTAMP () dos funciones para convertir. 

  • la función unix_timestamp () es convertir los datos de formato de fecha a tipo int
  • La función FROM_UNIXTIME (timestr) es convertir el tipo int al formato de hora

Crear tabla

create table test(
id int auto_increment not null,
timestr int ,
primary key(id)
);

Importar datos

insert into test (timestr) values (unix_timestamp('2018-05-29 16:00:00'));

Obtener datos

 

 

Almacenamiento de direcciones IP

 

En nuestra aplicación externa, debemos registrar la dirección IP. En la mayoría de los casos, varchar (15) se usa para almacenamiento, que requiere 15 bytes para almacenamiento, pero bigint solo requiere 8 bytes para almacenamiento. Use INET_ATON (), INET_NTOA () para convertir.

Crear tabla 

create table sessions(
id int auto_increment not null,
ipaddress bigint,
primary key (id)
);

Importar datos

insert into sessions (ipaddress)values (inet_aton('192.168.0.1'));

 

Convertir el resultado a una dirección IP

select inet_ntoa(ipaddress) from sessions;

 

 

568 artículos originales publicados · Me gusta 180 · Visitas 180,000+

Supongo que te gusta

Origin blog.csdn.net/Delicious_Life/article/details/105612139
Recomendado
Clasificación