Strange problem on the production server. After restarting the container assembly (which had the unintended side-effect of re-initialising the MySQL server with default settings), some memory-intensive pages (specifically the Views-enabled All Content page) wouldn't load. I couldn't import an SQL snapshot into a dev server for testing because MySQL kept on complaining about max_allowed_packet. After increasing max_allowed_packet, the import was successful and the troublesome pages loaded fine. I increased the setting on the production server and the problem went away as well. Why did max_allowed_packet need increasing unexpectedly? Is increasing it by a factor of 10 likely to avoid further problems, or will it cause more problems further down the line?
Why does max_allowed_packet need to be increased?
When your server is processing big queries, then you have to increase the value of the
max_allowed_packet (or to shorten your queries if possible ?).
Big queries makes me think of Views. One way to find those queries is, to enable the "Show the SQL query" under
admin/structure/views/settings edit a view and see how big its query is.
It is possible that if your content has been increased, your queries will have been increased as well (will return a large result row).
It is safe to increase the value of this variable because the extra memory is allocated only when needed.