Бормотухи.НЕТ

Вернуться   Бормотухи.НЕТ > Web-мастеру > vBulletin 3.х
Расширенный поиск

vBulletin 3.х Раздел о vBulletin и всем что касается этого скрипта

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2012, 13:41 Вверх   #1
Грамотный форумчанин
 
Аватар для mr_franklin
mr_franklin вне форума
Доп. информация
По умолчанию Изменение кодировки таблиц в бд

Доброго ночи бормоты! Есть бд в utf8 а внутри таблицы в cp1251. Как можно изменить кодировку таблиц в бд? Пробовал через phpmyadmin пользы 50 на 50 теперь половина таблиц в utf8 половина в cp1251
  Ответить с цитированием
Старый 10.12.2012, 14:11 Вверх   #2
Модератор
 
Аватар для Slavok47
Slavok47 вне форума
Доп. информация
По умолчанию

нету у тебя БД в utf8, она cp1251, сам же видел результат запроса
PHP код:
SHOW VARIABLES LIKE "character\_set\_database"
  Ответить с цитированием
Старый 11.12.2012, 03:37 Вверх   #3
Грамотный форумчанин
 
Аватар для mr_franklin
mr_franklin вне форума
Доп. информация
По умолчанию

Slavok47, Вот и это я хочу исправить, перекодировать бд в utf8. Но не знаю как это реализовать в поисковиках нашей кучу информацию но подобных методов нету =(
  Ответить с цитированием
Старый 11.12.2012, 07:51 Вверх   #4
Коренной житель
 
Аватар для den33000
den33000 вне форума
Доп. информация
По умолчанию

MySQL сервер версии 5.0 и выше, умеет выполнять вот такой вот запрос:

Код:
SELECT CONCAT('ALTER TABLE `', t.`TABLE_SCHEMA`, '`.`', t.`TABLE_NAME`, '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;') as sqlcode

  FROM `information_schema`.`TABLES` t WHERE 1   AND t.`TABLE_SCHEMA` = 'db_name'  ORDER BY 1
в этом запросе, вместо db_name необходимо поменять на реальное имя базы данных, кодировку которой вы собираетесь менять.

Выполнив этот запрос, мы получим еще один SQL, модифицирующий кодировку таблиц, он будет выглядеть примерно так:

Код:
ALTER TABLE `mydatabase`.`auth_group_permissions` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`auth_group` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`auth_message` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`auth_permission` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`auth_user_groups` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`auth_user_user_permissions` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`auth_user` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`blog_post` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`django_admin_log` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`django_comments` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`django_comment_flags` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`django_content_type` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`django_session` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`gallery_album` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`gallery_photo` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`gallery_video` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE `mydatabase`.`members_userprofile` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
Вот теперь можно копировать результирующий скрипт и выполнять его в окошке SQL зпросов. Результатом выполнения данного скрипта будет изменение кодировки во всех таблицах MySQL базы данных.

Вот так можно сэкономить кучу времени отдав выполнение кучи грязной работы всякого рода автоматизации.
  Ответить с цитированием
Старый 11.12.2012, 09:22 Вверх   #5
Модератор
 
Аватар для Slavok47
Slavok47 вне форума
Доп. информация
По умолчанию

лучше дампером
  Ответить с цитированием
Старый 12.12.2012, 06:51 Вверх   #6
Грамотный форумчанин
 
Аватар для mr_franklin
mr_franklin вне форума
Доп. информация
По умолчанию

den33000, Пробовал так. Теперь половина таблиц бд в utf8 половина cp1251 (именно те которые затронул этот код):

Последний раз редактировалось mr_franklin; 12.12.2012 в 06:59..
  Ответить с цитированием
Старый 12.12.2012, 07:11 Вверх   #7
Грамотный форумчанин
 
Аватар для mr_franklin
mr_franklin вне форума
Доп. информация
По умолчанию

Цитата Сообщение от Slavok47 Посмотреть сообщение
лучше дампером
Каким дампером? В Sypex Dumper не силен кодироват не хочет. вот беда =(
  Ответить с цитированием
Старый 12.12.2012, 07:54 Вверх   #8
Коренной житель
 
Аватар для den33000
den33000 вне форума
Доп. информация
По умолчанию

Цитата Сообщение от mr_franklin Посмотреть сообщение
den33000, Пробовал так. Теперь половина таблиц бд в utf8 половина cp1251 (именно те которые затронул этот код):
2 запрос весь скопировали ?
  Ответить с цитированием
Старый 12.12.2012, 07:58 Вверх   #9
Грамотный форумчанин
 
Аватар для mr_franklin
mr_franklin вне форума
Доп. информация
По умолчанию

den33000, Да полностью скопировал и сделал sql запрос
  Ответить с цитированием
Старый 12.12.2012, 08:28 Вверх   #10
Коренной житель
 
Аватар для den33000
den33000 вне форума
Доп. информация
По умолчанию

Цитата Сообщение от mr_franklin Посмотреть сообщение
den33000, Да полностью скопировал и сделал sql запрос
Хм странно. Ну тогда юзайте Дампер
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 10:01. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
 

Время генерации страницы 0.11896 секунды с 12 запросами