Feed Aggregator

MariaDB ha compromesso il concetto di buffer pool configurabile dinamicamente!

oli - lun, 2026-02-09 19:14

Descrizione del problema

MySQL ha introdotto il buffer pool InnoDB configurabile dinamicamente con la versione 5.7.5 nel settembre 2014 (qui e qui):

The innodb_buffer_pool_size configuration option can be set dynamically using a SET statement, allowing you to resize the buffer pool without restarting the server. For example:

mysql> SET GLOBAL innodb_buffer_pool_size=402653184;

MariaDB 10.2.2 ha adottato questa funzione nel settembre 2016 (fonte):

InnoDB was merged from MySQL-5.7.14 (XtraDB is disabled in MariaDB-10.2.2 pending a similar merge)

Il problema è, da un lato, che questa funzione ora non funziona più come prima e non funziona più come previsto. D’altra parte, nella primavera del 2025 hanno modificato il comportamento all’interno di una serie di release principali (LTS), cosa che a mio parere è assolutamente inaccettabile (fonte):

From MariaDB 10.11.12 / 11.4.6 / 11.8.2, there are significant changes to the InnoDB buffer pool behavior.

Inoltre, la descrizione è piuttosto scarsa ( …


Taxonomy upgrade extras:  mariadb, innodb, buffer pool,
Categories: 

Blogs

- lun, 2026-02-09 19:14

Taxonomy upgrade extras: 
Categories: 

Quanto spazio occupa NULL?

oli - dom, 2026-02-08 16:15

Durante l’ultima consulenza presso il cliente, questi mi è venuto incontro raggiante dicendomi che aveva seguito il mio consiglio e aveva modificato tutte le colonne Primary Key da BIGINT (8 byte) a INT (4 byte) e che questo aveva portato grandi vantaggi! Il suo database MySQL 8.4 era ora più piccolo di 750 Gbyte (da 5,5 Tbyte). Fantastico!

E sì, so che questo contraddice le raccomandazioni di alcuni dei miei colleghi PostgreSQL (qui e qui). Nel mondo MySQL si dà più importanza a queste cose (fonte):

Use the most efficient (smallest) data types possible. MySQL has many specialized types that save disk space and memory. For example, use the smaller integer types if possible to get smaller tables

Inoltre, InnoDB funziona in modo leggermente diverso (tabella clusterizzata dell’indice e chiave primaria in tutte le chiavi secondarie) rispetto a PostgreSQL (tabella heap, indici con puntatore di riga (ctid)).

Ma in realtà non è questo il punto. Subito dopo mi ha chiesto se riempire le colonne di tipo …


Taxonomy upgrade extras:  null, postgresql, mariadb, mysql, vacuum, optimize,
Categories: 

Qualcuno sta cancellando i miei segmenti di memoria condivisa!

oli - dom, 2026-02-08 06:27

Quando lavoriamo con PostgreSQL su myEnv, riceviamo regolarmente errori relativi al segmento di memoria condivisa. Esempio:

psql: error: connection to server on socket "/tmp/.s.PGSQL.5433" failed:
FATAL:  could not open shared memory segment "/PostgreSQL.4220847662":
No such file or directory

oppure vediamo messaggi simili nel log degli errori di PostgreSQL:

ERROR:  could not open shared memory segment "/PostgreSQL.4220847662":
No such file or directory

Essendo un amministratore MariaDB/MySQL, non ho molta familiarità con i problemi relativi alla memoria condivisa (MariaDB/MySQL non funziona con la memoria condivisa). Fortunatamente, una ricerca su Internet ci ha portato su una pista (fonte). Qui si legge:

The documentation of systemd states that this only happens for non-system users. Can you check whether your “postgres” user (or whatever you are using) is a system user?

Utente di sistema Linux

Per prima cosa ho dovuto capire cosa fosse un utente di sistema in Linux. …


Taxonomy upgrade extras:  postgresql, shared memory, myenv, systemd,
Categories: 

Caricare file CSV nel database

Shinguz - ven, 2026-02-06 18:04

Recentemente, per un piccolo gioco personale, ho voluto rappresentare su una mappa i luoghi di residenza dei membri della mia associazione (IGOC Mitglieder). Conoscevo gli indirizzi dei membri dell’associazione, ma non le coordinate dei loro luoghi di residenza.

Così mi sono messo alla ricerca delle coordinate e le ho trovate presso l’Ufficio federale di topografia (swisstopo).

I dati sono disponibili in formato CSV. Maggiori dettagli qui: Coordinate delle località svizzere.

Come si caricano questi dati in un database?

Caricamento dei dati con MariaDB/MySQL

MariaDB e MySQL dispongono del comando LOAD DATA INFILE:

SQL> DROP TABLE IF EXISTS wgs84;

SQL> -- SET GLOBAL local_infile = ON;   -- Only needed with MySQL

SQL> CREATE TABLE wgs84 (
  ortschaftsname VARCHAR(32)
, plz4 SMALLINT
, zusatzziffer SMALLINT
, zip_id SMALLINT UNSIGNED
, gemeindename VARCHAR(32)
, bfs_nr SMALLINT
, kantonskuerzel CHAR(2)
, adressenanteil varchar(8)
, e DOUBLE
, n DOUBLE
, sprache VARCHAR(8)
, validity …

Taxonomy upgrade extras:  csv, fdw, foreign data wrapper, postgresql, mysql, mariadb, copy, load data infile,
Categories: 

FromDual

oli - mer, 2026-01-21 11:36



Servizi neutrali e indipendenti dal produttore
per MariaDB, Galera Cluster e MySQL!



Servizi per MariaDB, Galera e MySQL

Offriamo i seguenti servizi:

Per ulteriori informazioni, contattateci



Provate gratuitamente il nostro Monitoring as a Service


Corsi di formazione MariaDB, Galera e MySQL in programma

Per ulteriori informazioni sul nostro programma di formazione, consultate la pagina Corsi di formazione/seminari MariaDB, Galera e MySQL.

Taxonomy upgrade extras: 
Categories: 

Test

Oli Sennhauser - mer, 2026-01-21 11:28

Una pagina di prova in tedesco…


Taxonomy upgrade extras: 
Categories: 

Contattare FromDual

oli - ven, 2026-01-16 20:42

Potete contattarci nei seguenti modi:


Indirizzo:FromDual GmbH
Rebenweg 6
CH - 8610 Uster
Svizzera
E-mail:contact@fromdual.com
Telefono:+41 44 500 58 20+49 201 853 67 70
 
Partita IVA/UID:CHE-301.341.221 MWST
Numero DUNS:485921436

Taxonomy upgrade extras: 
Categories: 

InnoDB deadlock con SELECT? Non è possibile! O forse sì?

oli - sab, 2023-11-25 18:05

Introduzione

Due punti per iniziare:

  1. Un deadlock è uno stato in cui due transazioni diverse non sono più in grado di continuare a lavorare perché ciascuna transazione detiene un blocco di cui l’altra transazione avrebbe bisogno. Poiché entrambe le transazioni stanno aspettando che l’altra transazione rilasci il proprio blocco, nessuna delle due rilascerà il proprio blocco. E questo durerebbe fino a dopodomani. Per evitare ciò, l’istanza di MariaDB interviene e uccide la transazione che ha svolto meno lavoro. L’applicazione riceve quindi un messaggio di errore di deadlock del tipo:

    ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction
    
  2. Il mantra generale nell’ecosistema MariaDB è che una SELECT non causa blocchi (eccezione: FOR UPDATE o LOCK IN SHARE MODE) e quindi non può essere parte di un deadlock.

Il problema

Un cliente di lunga data si rivolge al team di DBA remoti di FromDual con la richiesta di spiegare una situazione di deadlock: …


Taxonomy upgrade extras:  deadlock, select,
Categories: 

Ops! Pagina non trovata.

- lun, 0001-01-01 00:00


Cosa stai cercando esattamente?



Taxonomy upgrade extras: 
Categories: 

- lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

Shinguz - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

sales_en - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

sales_de - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

oli - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

joerg - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

cedric - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 

abdel-mawla - lun, 0001-01-01 00:00

Taxonomy upgrade extras: 
Categories: 
Subscribe to FromDual aggregator