Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблема переноса MySQL
Форумы портала PHP.SU » » Работа с СУБД » Проблема переноса MySQL

Страниц (2): [1] 2 »
 

1. Budulianin - 22 Сентября, 2011 - 20:46:16 - перейти к сообщению
Всем привет. Нужно было перенести сайт на другой сервак. Затарил в один архив все страницы, разтарил на серваке новом. Сделал экспорт БД. На новом серваке Импорт этой БД. Загружаю сайт и кракозябры, т е что то с кодировкой. Весь текст из БД. Где могли возникнуть проблемы с БД? версия MySQL на обоих серваках 4.. но не одинаковые. Может при импорте что то надо указать?
2. ALEN - 22 Сентября, 2011 - 20:48:31 - перейти к сообщению
Какие кодировки по дефолту на серверах стоят для БД?

Так же при проблемы только с некоторыми символами, можно их заменять по аналогии:
CODE (SQL):
скопировать код в буфер обмена
  1. UPDATE `tbl` SET `pole` = REPLACE(
  2. `pole`,
  3. CONCAT( CHAR(209), CHAR(63) ),
  4. CONCAT( CHAR(209), CHAR(136) )
  5. );
  6.  
  7. UPDATE `tbl` SET `pole` = REPLACE(
  8. `pole`,
  9. CONCAT( CHAR(208), CHAR(63) ),
  10. CONCAT( CHAR(208), CHAR(152) )
  11. );

Вообще смотрите в сторону установки кодировки для работы с БД - самая частая болезнь.
3. Budulianin - 22 Сентября, 2011 - 21:07:29 - перейти к сообщению
Цитата:
Какие кодировки по дефолту на серверах стоят для БД?


Где посмотреть можно? в phpMyadmin ?
4. caballero - 22 Сентября, 2011 - 22:06:46 - перейти к сообщению
http://sypex[dot]net/ru/products/dumper/downloads/
заюзай вместо PHPMyAdmin

в какой кодировке в базе не имеет значения
кодировка БД может быть одна сервера другая локаль в оси третья а у mysql клиента четвертая
указывай через set names в какой тебе надо получить
5. Budulianin - 23 Сентября, 2011 - 11:09:46 - перейти к сообщению
caballero пишет:
http://sypex[dot]net/ru/products/dumper/downloads/
заюзай вместо PHPMyAdmin

в какой кодировке в базе не имеет значения
кодировка БД может быть одна сервера другая локаль в оси третья а у mysql клиента четвертая
указывай через set names в какой тебе надо получить


а как ей пользоваться? установить на сервер а далее?
(Добавление)
Не понял как разобраться с кодировкой БД на сервере. Вставил после mysql_connect mysql_query('SET NAMES cp1251')


Работает.

Прокомментируйте, плохо это или хорошо или неправильно
6. EuGen - 23 Сентября, 2011 - 12:14:18 - перейти к сообщению
А обычные .sql - дампы теперь не в моде?
mysqldump сделает всю работу за Вас - в том числе и укажет кодировку.
7. Budulianin - 23 Сентября, 2011 - 12:22:18 - перейти к сообщению
EuGen пишет:
А обычные .sql - дампы теперь не в моде?
mysqldump сделает всю работу за Вас - в том числе и укажет кодировку.


Всмысле через shell команду mysqldump по ssh ?
8. EuGen - 23 Сентября, 2011 - 12:50:15 - перейти к сообщению
Можете и так. Дамп, который создается mysqldump - учитывает кодировки, auto_increment и т.п.
9. Budulianin - 23 Сентября, 2011 - 12:55:46 - перейти к сообщению
EuGen пишет:
Можете и так. Дамп, который создается mysqldump - учитывает кодировки, auto_increment и т.п.


а как мне снять дамп с базы если она на другом сервере и доступ только к phpMyadmin?

сохранить в текстовый файл, закинуть к себе на сервак и там уже mysqldump применить?
10. EuGen - 23 Сентября, 2011 - 12:58:11 - перейти к сообщению
Так это же Ваша БД. Вот и попросите администратора хостинга сделать дамп.
Хотя PMA уже вроде давно делает такой же дамп как и mysqldump
11. Budulianin - 23 Сентября, 2011 - 13:02:25 - перейти к сообщению
EuGen пишет:
Так это же Ваша БД. Вот и попросите администратора хостинга сделать дамп.
Хотя PMA уже вроде давно делает такой же дамп как и mysqldump


Нет возможности связаться с админом.

пробую вот такой командой но ничего не происходит

mysql -u root -p -f name_database < ./dump.txt
12. EuGen - 23 Сентября, 2011 - 13:23:40 - перейти к сообщению
mysql -uUSER -pPASSWORD DATABASE < dump.sql

Или же зайти в mysql shell и там
mysql>SOURCE /path/to/dump.sql

(первое гораздо быстрее)
13. Budulianin - 23 Сентября, 2011 - 13:34:54 - перейти к сообщению
Variables (--variable-name=value)
and boolean options {FALSE|TRUE} Value (after reading options)
-------------------------------- - -----------------------------
auto-rehash FALSE
character-sets-dir (No default value)
default-character-set latin1
comments FALSE
compress FALSE
database (No default value)
delimiter ;
vertical FALSE
force TRUE
named-commands FALSE
local-infile TRUE
no-beep FALSE
host (No default value)
html FALSE
xml FALSE
line-numbers TRUE
unbuffered FALSE
column-names TRUE
sigint-ignore FALSE
port 3306
prompt mysql>
quick TRUE
raw FALSE
reconnect FALSE
socket /var/lib/mysql/mysql.sock
table FALSE
debug-info FALSE
user iboperm_iboperm
safe-updates FALSE
i-am-a-dummy FALSE
connect_timeout 10
max_allowed_packet 16777216
net_buffer_length 16384
select_limit 1000
max_join_size 1000000
secure-auth FALSE
show-warnings FALSE


Вот это выводит, как я понял, создавать он отказывается?
(Добавление)
перед этим ещё ругнулся на redhat
14. EuGen - 23 Сентября, 2011 - 13:49:12 - перейти к сообщению
Что отказывается? Где выводит? Вы пробовали дамп загружать в итоге?
15. Budulianin - 23 Сентября, 2011 - 13:54:49 - перейти к сообщению
EuGen пишет:
Что отказывается? Где выводит? Вы пробовали дамп загружать в итоге?


по ssh ввожу mysql -u root -p -f name_database < C:\mydb_backup_name_database.txt

выводит вот это в окне

mysql Ver 14.12 Distrib 5.0.67, for redhat-linux-gnu (i686) using readline 5.1
Copyright (C) 2000-2008 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license

 

Powered by ExBB FM 1.0 RC1