2014-01-23 5 views
3

Я решил перенести из моего приложения CodeIgniter в laravel специально для их рельсов - вероятную обработку базы данных.Как перенести из базы данных CodeIgniter в базу данных Laravel

Проблема в том, что у меня есть 800 МБ базы данных для миграции. Как я могу сделать это хорошо и быстро? Учебники, которые я видел, основаны на старых моделях laravel для новых. Это меня смущает.

Я также использую библиотеку cryptignign для паролей пользователей. Как я могу перенести это?

+0

У меня такая же проблема. Если мне удастся перенести данные паролей, я отправлю решение здесь. : D – arttioz

ответ

0

Базы данных практически одинаковы в Laravel или Codeigniter, если ваши таблицы хороши тем, как они для вас, и у них есть первичный ключ с именем id (это также необязательно), вы можете просто подключиться к Laravel в своей базе данных и все будет хорошо.

Для ваших новых таблиц вы можете создавать новые миграции, и Laravel не будет жаловаться на это.

Ну, а если вам действительно нужно перейти на совершенно новую базу данных, вы можете сделать следующее:

1) переименовать таблицы, которые нужно перенести

php artisan migrate:make 

2) создать все ваши миграции с вашей и перенести их:

php artisan migrate 

3) использовать базы данных SQL Server, утилита для копирования данных из одной таблицы в другую, то это будет намного быстрее, чем создавать все, что я Ларавель, поверь мне. Большинство баз данных позволят вам делать такие вещи, как:

INSERT INTO users (FirstName, LastName) 
SELECT FirstName, LastName 
FROM users_old 

А в некоторых вы будете в состоянии сделать то же самое с использованием двух различных баз данных и столбцы имен

INSERT INTO NEWdatabasename.users (firstName+' '+Lastname, email) 
SELECT name, email 
FROM OLDdatabasename. 

Или вы можете просто экспортировать данные в CSV-файл, а затем создать метод в своем классе Laravel высева, чтобы загрузить данные в вашу базу данных, с большим количеством данных для импорта, вы просто должны помнить, чтобы выполнить:

DB::disableQueryLog(); 

Так что ваш PHP не заканчивается память.

См.? Есть много вариантов, возможно, гораздо больше, поэтому выберите один, и если вам нужна помощь, зажгите больше вопросов.

Смежные вопросы