Mam dysk twardy podzielony na dwie partycje, dzięki czemu mogę łatwo ponownie zainstalować Ubuntu i wypróbować różne wersje bez utraty danych z katalogu domowego. Konfiguracja jest następująca:
20GB -> / (root)
180GB -> /home
Dużo pracuję nad programowaniem, więc mój /var/www
folder symbolicznie łączy się z /home/valorin/workspace
.
Ale chcę to zrobić również z moimi plikami danych MySQL, ponieważ denerwuję się, że za każdym razem, gdy ponownie instaluję komputer, muszę wykonać pełny zrzut SQL, a następnie przywrócić wszystkie bazy danych, zanim będę mógł wykonać więcej pracy.
Jaki jest najlepszy sposób na zrobienie tego bez łamania MySQL?
Super użytkownik ma ładne instrukcje krok po kroku, jak rozwiązać ten problem
Oto inny zestaw instrukcji dotyczących robienia tego samego http://www.ubuntugeek.com/how-to-change-the-mysql-data-default-directory.html
Tutaj jest on opublikowany. Idź i w górę głosuj na oryginał, jeśli możesz na superużytkownika.
Po ogólnym zamieszaniu związanym z uprawnieniami zdałem sobie sprawę, że problemem nie było to, że nie miałem odpowiednich uprawnień i ścieżek, ale że AppArmor uniemożliwiał mysqlowi czytanie i pisanie w nowej lokalizacji.
To jest moje rozwiązanie:
Najpierw zatrzymaj MySQL, aby nic dziwnego się nie działo, gdy bawiąc się:
Następnie przenieś wszystkie katalogi bazy danych do ich nowego domu:
Nie przenoś plików, zostaną one wygenerowane przez mysql, po prostu przenieś foldery (które są bazami danych).
Następnie grzecznie poproś AppArmor o zezwolenie mysql na użycie nowego folderu:
dodaj linie:
Następnie powiedz mysql, że datadir został przeniesiony:
zmień linię:
do:
UWAGA: W zależności od konfiguracji bazy danych może być konieczna zmiana innodb-data-home-dir itp.
Następnie uruchom ponownie AppArmor, aby odczytać nowe ustawienia:
I ponownie uruchom MySQL przy użyciu nowego katalogu danych:
Mam nadzieję że to pomoże!
źródło
To naprawdę nie jest specyficzne dla Ubuntu. Niemniej jednak jest coś, co może pomóc: http://developer.spikesource.com/wiki/index.php/How_to_change_the_mysql_database_location
źródło
Dla tych, którzy mnie lubią, pracują z VirtualBox i muszą przenieść katalog danych MySQL do folderu współdzielonego w systemie hosta, postępuj zgodnie z prostym samouczkiem na http://vacilando.org/en/article/moving-mysql-data-files-virtualbox -udostępniony folder
źródło
To nie będzie tak działać.
użytkownik mysql musi mieć prawo do napisania nowego katalogu:
źródło