Не храните данные конфигурации в базе данных, если у вас нет для этого веских причин. Если у вас есть очень веская причина, и вы абсолютно уверены, что собираетесь это сделать, вам, вероятно, следует хранить ее в формате сериализации данных, таком как JSON или YAML (не XML, если вам не нужен язык разметки для настройки приложения - - Поверь мне, ты не) как строка. Затем вы можете просто прочитать строку и использовать инструменты на любом языке, на котором вы работаете, чтобы читать и изменять его. Храните строки с временными метками, и у вас есть простая схема управления версиями с возможностью хранить иерархические данные в очень простой системе. Даже если вам не нужны иерархические данные конфигурации, по крайней мере сейчас, если они понадобятся вам в будущем, вам не придется менять интерфейс конфигурации, чтобы получить их. Конечно, вы теряете возможность выполнять реляционные запросы к вашим данным конфигурации, но если вы храните этих больших данных конфигурации, то вы, вероятно, все равно делаете что-то очень неправильное.
Компании, как правило, хранят множество данных конфигурации для своих систем в базе данных, я не уверен, почему, я не думаю, что много думают об этих решениях. Я не вижу, чтобы подобные вещи делали слишком часто в мире OSS. Даже большие программы OSS, которые нуждаются в большом количестве настроек, таких как Apache, не нуждаются в подключении к базе данных, содержащей таблицу apache_config, для работы. Наличие большого количества настроек в ваших приложениях - неприятный запах кода, хранение этих данных в базе данных просто вызывает больше проблем (как иллюстрирует этот поток).