Как изменить место хранения БД для определенного пользователя?
MySQL построен по клиент-серверной технологии. С файлами базы данных работает сервер, к которому обращаются клиенты. Сервер может располагаться на том же компьютере, что и клиент, или на другом, доступном через сеть. Такая технология используется, как правило, когда все экземпляры приложения работают с одной общей базой данных.
Если вам надо держать отдельную базу данных для каждого экземпляра приложения, то смотрите в сторону SQLite.
Большинство СУБД хранят данные в директориях со своим расположением. В Линуксе изменчивые (variable) данные хранятся в /var. Не должно быть никаких проблем с тем что данные хранятся именно там. Все, что создается пользователем, доступно только тем, у кого есть доступ к схемам БД и таблицам.

Из тех немногих СУБД, которые позволяют хранить данные в той же директории, что и приложение, можно упомянуть SQLite. Это единственный файл, в котором находятся все данные и они доступны любому, у кого есть доступ к файлу. В SQLite нет аутентикации пользователей.