2006 MySQL Server Has Gone Away — SQL Technical Interview Questions & Answers
2006 MySQL Server Has Gone Away
2006 MySQL Server Has Gone Away
- 2006 MySQL Server Has Gone Away is a MySQL error/mode, not a query type. Read the message: 1064 = syntax (look at the caret). 2006/2013 = connection dropped (timeout, packet, server restart). 1045 = access denied. 1062 = duplicate key.
- Safe updates: Workbench blocks UPDATE/DELETE without a key. Either add WHERE pk = … or (lab only) SET SQL_SAFE_UPDATES=0. Don’t turn it off as a lifestyle.
- Too many connections: close unused clients, raise max_connections only with care. ‘Server has gone away’: wait_timeout / max_allowed_packet / actually crashed server.
- Trap: googling the code without reading the SQL line MySQL pointed at.
Technical Interview Tip: Name the error code, what it means, one fix.
Code Examples for 2006 MySQL Server Has Gone Away
2006 MySQL Server Has Gone Away — sample query
-- 2006 MySQL Server Has Gone Away
CREATE TABLE demo (
id INTEGER PRIMARY KEY,
label TEXT NOT NULL,
qty INTEGER DEFAULT 0
);
INSERT INTO demo (id, label, qty) VALUES
(1, 'alpha', 2),
(2, 'beta', 5);
SELECT label, qty FROM demo WHERE qty >= 2 ORDER BY qty DESC;2006 MySQL Server Has Gone Away: create two demo rows, then SELECT qty >= 2 ordered. Say which labels come back.
How to Explain 2006 MySQL Server Has Gone Away to an Interviewer
What is 1064?
Syntax error Look at the query near the marker