Meu aplicativo em linguagem C simplório (ISAM, sem transações) funciona oito horas por dia, atualizando várias tabelas em um banco de dados em uma única conexão MySQL que permanece aberta o tempo todo. Funciona muito bem. Sempre que há algum tipo de erro do MySQL (não apenas o servidor desapareceu), o código apenas chama mysql_real_connect() novamente e ele pega sem nenhum problema. A reconexão é um dos lugares onde, na minha opinião, o MySQL funciona perfeitamente.
Mas há muita controvérsia e discussão sobre a bondade/maldade das conexões persistentes. Você pode encontrar alguns deles aqui:
http://www.google.com/webhp?hl=&sourceid=navclient-ff&rlz=1B3GGLL_enUS384US384&ie=UTF-8#rlz =1B3GGLL_enUS384US384&hl=en&source=hp&q=mysql+persistent+connection&aq=0&aqi=g4g-m5&aql=&oq=mysql+persistent+conn&gs_rfai=Ch2c6iCchTO3zG4i6MZ-i7JAOAAAAqgQFT9BAKCs&fp=ff274912d96214e>
-- HTH