Как перенести базу данных MySQL из Windows в Ubuntu?

Принцип замены Лисков (LSP, ) является понятием в Объектно-ориентированном программировании, которое указывает:

Функции, которые используют указатели или ссылки на базовые классы, должны быть в состоянии использовать объекты производных классов, не зная это.

В его сердечном LSP об интерфейсах и контрактах, а также как решить, когда расширить класс по сравнению с использованием другая стратегия, такая как состав для достижения цели.

самый эффективный способ, которым я видел, чтобы проиллюстрировать этот тезис, был в [1 122] Главный Первый OOA& D. Они представляют сценарий, где Вы - разработчик на проекте создать платформу для стратегических игр.

Они представляют класс, который представляет плату, которая похожа на это:

Class Diagram

Все методы берут координаты X и Y в качестве параметров для определения положения мозаики в двухмерной антенной решетке Tiles. Это позволит разработчику игр управлять единицами в плате в ходе игры.

книга продолжает изменять требования, чтобы сказать, что игровая основа должна также поддерживать 3D игровые доски для размещения игр, которые имеют полет. Так ThreeDBoard класс представлен, который расширяется Board.

На первый взгляд это походит на хорошее решение. Board обеспечивает и Height и Width, свойства и ThreeDBoard обеспечивают ось Z.

то, Где это ломается, - когда Вы смотрите на всех других участников, наследованных от Board. Методы для AddUnit, GetTile, GetUnits и так далее, все берут оба параметра X и Y в Board класс, но ThreeDBoard потребности параметр Z также.

, Таким образом, необходимо реализовать те методы снова с параметром Z. Параметр Z не имеет никакого контекста к Board класс и унаследованные методы от Board, класс теряет их значение. Единица кода, пытающегося использовать ThreeDBoard класс как его базовый класс Board, была бы очень неудачливой.

, Возможно, мы должны найти другой подход. Вместо того, чтобы расшириться Board, ThreeDBoard должен состоять из [1 119] объекты. Один Board объект на единицу оси Z.

Это позволяет нам использовать хорошие объектно-ориентированные принципы как инкапсуляция и повторное использование, и doesn’t нарушают LSP.

4
задан 19.05.2020, 04:43

1 ответ

mysqldump является общим методом скопировать базу данных.

Создают дамп на окнах:

mysqldump -u [USER] -p [DATABASE] > [BACKUP]

Копия файл к Ubuntu и восстановлению это в Ubuntu:

mysql -u [USER] -p [DATABASE] <./[BACKUP]
  • обе команды сделаны от оболочки (не из MySQL).
4
ответ дан 19.05.2020, 04:44
  • 1
    в окнах с оболочкой u означают CMD или mysql консоль? – Community 19.05.2020, 04:44
  • 2
    Необходимо изменить каталог туда, где Вы выполняете mysql от. – gabrielhpugliese 19.05.2020, 04:45
  • 3
    спасибо, но у меня есть эта ошибка " mysqldump не распознан как внутренний или внешний command" – Tom Carver 19.05.2020, 04:45
  • 4
    здесь: youtube.com/watch?v=2hsOk0XcYC4 (Вам нужна оболочка (cmd) не mysql подсказка), – agross 19.05.2020, 04:46
  • 5
    @MahmoudSenSei извините, я не пользователь Windows. Вы самостоятельно;) – 0fnt 19.05.2020, 04:46

Теги

Похожие вопросы