2011-06-04

Как изменить кодировку базы данных на UTF-8

Встала задача сконвертировать базу данных из latin1 в utf8. В интернете есть множестово рецептов как это сделать. Наиболее часто встречается PHP скрипт, который генерирует последовательность из ALTER TABLE комманд.

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

Делать эти преобразования вручную на живой базе довольно стрёмно - данные могут измениться между шагами, поэтому я создал вот такой скрипт для выполнения данной задачи:

#!/bin/sh

DBNAME="yourdbname"
DBUSER="yourdbuser"
DBPASS="yourdbpassword"

mysqldump -u$DBUSER -p$DBPASS $DBNAME > $DBNAME.sql
sed 's/DEFAULT CHARSET=latin1//' $DBNAME.sql > ${DBNAME}_converted.sql
sed 's/CHARACTER SET latin1//' ${DBNAME}_converted.sql > ${DBNAME}_converted1.sql

mysql -u$DBUSER -p$DBPASS $DBNAME <<EOFMYSQL
ALTER DATABASE $DBNAME DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
EOFMYSQL

mysql -u$DBUSER -p$DBPASS $DBNAME < ${DBNAME}_converted1.sql

Исходная база была в latin1, если у вас другая кодировка, скрипт легко подправить.

 

Оставить комментарий

 
  2011-06-03

Как испечь бородинский хлеб

Традиционные рецепты выпекания бородинского хлеба подразумевают использование солода. Вот только солода в наших магазинах не найти. Однако, знающие люди предположили, что солод используется для приготовлнения кваса и значит можно использовать готовые смеси для кваса вместо солода. Из имеющихся в наших магазинах полуфабрикаты для приготовления кваса в домашних условиях, наиболее правильным мне показался вот этот:

Внутри имеются два пакетика со смесью из ячменного и ржаного солода и два пакетика с дрожжами.

Попробовал испечь хлеб с использованием этой штуки и мы теперь только такой и печём. Получается очень вкусно, гораздо вкуснее чем обычный бородинский хлеб из магазина, видимо, из-за ячменного солода. Для приготовления одной буханки требуется 1 такой набор.

Рецепт для приготовления 1 кг буханки у меня получается такой:

В форму для приготовления хлеба вылейте содержимое обоих пакетиков с концентратом для приготовления кваса. Положите 2.5 чайной ложки молотого кориандра, 2.5 чайной ложки дрожжей (примерно 2 ложки содержатся с квасном наборе+еще немного нужно добавить). Затем залейте 400 милилитров теплой воды. Добавьвте 400 грамм пшеничной муки, 100 грамм ржаной муки. Положите 1.5 столовой ложки меда, 2 столовой ложки яблочного уксуса, 2 столовой ложки растительного масла. Выберите программу для приготовления бородинского хлеба. Примерно через 20 минут после начала программы откройте хлебопечку и посыпьте сверху щепотку цельного кориандра. После окончания программы дайте хлебу остыть в печке примерно 30 минут после чего выньте.

Приятного аппетита!

 

Оставить комментарий

 
  2011-05-31

Покупка на немецком Amazon

"При чем здесь еж?" - задумался Штирлиц. Это слово он уже слышал. И тут он догадался. Ведь "еж" - по-немецки "игель"! А "Ежики" - "Игельс"! А именно так называлась таинственная операция вермахта, над разгадкой которой он так долго бился.

Похождения Штирлица - Операция "ИГЕЛЬС"

Я уже писал о том, что на американском Amazon можно покупать мобильные телефоны значительно экономя свои деньги, но не время - посылка из США идет дольше, чем душа усопшего из чистилища в рай - более сорока дней. Кроме этого, сама пересылка стоит довольно значительно - около сорока баксов.

В связи с этим, возникла мысль попробовать что-нибудь купить на европейском Amazon. При сравнении цен на английском amazon.co.uk с немецким amazon.de выяснилось, что на немецком за евро покупать получается выгоднее чем на британском за британские фунты. Правда, на немецком сайте всё на языке Гёте и Гайне, но зря что ли я в школе и институте учил этот язык?

Motorolla Milestone 2 пришел в очень убогой комплектации - в ней не было даже элементарного чехла, а зарядка оказалась с британской вилкой (!surprise!). Поиски подходящего чехла в отечественных магизинах ни к чему не привели, единственный экземпляр, который мне удалось найти, и в который с трудом удалось засунуть мой телефон,  выглядел так, как будто его шили на уроках домоводства китайские дети из вспомогательной школы и просили за это чудо 900 рублей.

Поэтому, заказал два чехла на amazon.de:

B004SUUPUI Tasche (PU) für Motorola Milestone 2 Etuiformat schwarz
B004SUUPUI ss-shop Elegante Leder Quer für Motorola Milestone inkl. 1x ss-shop Kugelschreiber

Сначала пришёл более простой вариант Tasche (PU) für Motorola Milestone 2 Etuiformat schwarz - в обычном письме. Обошлось мне эта шкурка 3 евро - 120 рублей. Чтобы телефон не пылился вполне сойдет.

Еще через два дня пришла вторая посылка - за ней пришлось идти на почту. В посылке кроме чехла для телефона оказалась еще и шариковая ручка, оказывается она идет в комплекте и про это даже сказано в описании товара - обычная ручка с названием продавца - ss-onlineshop.ru. Сайта, правда по этому адресу никакого нет и сам домен, похоже, выставлен на продажу.

Кроме этого, в посылке оказалась автомобильная зарядка! Вот уж спасибо им за это. Зарядку я не заказывал, хотя на амазоне есть вариант покупки комплекта сумка плюс зарядник. То ли они перепутали, то ли захотели сделать мне подарок -  этого я уже никогда не узнаю.

Думаю, что если хорошенько поискать, то в Саратове можно найти аналогичные вещи за аналогичную цену, просто хотелось проверить саму возможность заказа на европейском amazon. Посылка из Германии в Саратов идет около 20 дней, что значительно быстрее чем из Штатов. При этом стоимость пересылки значительно меньше. Кроме того, цены оказываются вполне сравнимы с магазинными, если не дешеве.

 

Коментариев: 1

 
  2011-05-29

Двуодурь cуперумилина

Помнится, был такой фантастический роман, где все жители земли в будущем были вынуждены употреблять специальные галлюциногены чтобы реальность казалась не такой мрачной. Чтобы увидеть реальный мир нужно было принять антигаллюциногены. Сейчас, сразу после программы новостей тоже хочется принять какой нибудь антигаллюциноген, не много, совсем чуть-чуть. Однако, оказывается, есть и альтернативный способ - можно почитать вот это.

P.S. нашёл это произведение - Станислав Лем "Конгресс футурологов"

 

Оставить комментарий

 
  2011-05-28

Автошкола

Один мой хороший знакомый, добрый и талантливый человек сейчас пытается сдать на права. Заплатил денег за обучение, отучился, сдал внутренний экзамен в автошколе и пришла очередь сдавать экзамен в МРЭО ГИБДД. В автошколе сразу сказали, чтобы сдать нужно заплатить инспектору - иначе экзамен сдать невозможно. Мой знакомый не то чтобы очень жадный, просто деньги у него не задерживаются в силу ряда причин, и лишних денег на разного рода взятки у него нет, поэтому он решил сдавать экзамен без денег.

Не знаю как он водит, но теорию и дворики он сдал с первого раза, а город завалил. Причём, что именно завалил ему в автошколе не сказали. Зато честно заявили, что те кто денег на экзамен не дает обычно не сдают. Арифметика тут простая - если в автошколе все сдают - значит, что то тут не чисто, поэтому, должны быть несдавшие. Те кто сдают деньги сдают все не важно как они водят, поэтому несдавшие это те, кто пытаются сдать без взятки. И неважно что ты водишь безупречно - для статики нужны несдавшие.

Знакомый сдавал уже пять раз. При этом инструктор честно перед экзаменом ему показывает списки тех, кто сегодня сдаст экзамен, причем, в глаза заявляет что инспекторы ещё и дрючат автошколу за то, что мало платят денег за экзамены. Думаю что в следующий раз мой знакомый пойдет сдавать уже с деньгами - ибо права хочется а воевать не хочется.

И все это происходит на тему громких заявлений по телевизору про борьбу с коррупцией, про то, что среднюю продолжительность жизни ударными темпами нужно увеличивать. Но одновременно с этим на дорогу сейчас выезжают люди, которые либо совсем не умеют водить, либо водят плохо, и, как результат - тысячами гибнут в ДТП и забирают с собой неудачно подвернувшихся пешеходов.

Кстати сказать, этого же самого моего знакомого несколько лет назад сбила машина - на тротуар по которому он шёл с друзьями вылетела иномарка. Это происшествие подарило ему несколько незабываемых месяцев в больнице, лишило половины зубов, и подарило белый билет. Водитель же сбившей его иномарки уехал бы с места происшествия не задержи его друзья с которыми тот шёл, а в последствии, этот водитель вообще оказался не причём.

 

Оставить комментарий

 
  2011-05-27

Ruby on Rails с точки зрения PHP программиста

Изучаю RoR, в принципе нравится. Многие вещи сделаны классно но некоторые вещи вызвали у меня недоуменье:

- обязательный REST: контроллеры генерят код для HTML и для XML хотя их никто об этом не просит. Возможно это круто и обосновано, однако это приводит к избыточности в коде, и созданию функциональности, которая никогда не будет востреботвана.

- обязятельный JavaScript:удаление элементов происходим методом DELETE, хотя браузеры обычно этот метод не используют, поэтому, для вызова DELETE методов используется объект HttpRequest. Как следствие, в браузере обязательно должен быть включен JavaScript. Если JavaScript выключить стандарные методы удаления объектов перестают работать. Это - не гуд.

- избыточность в структуре проекта: методы генерации объектов создают сразу код на все случаи жизни... И что мне после этого удалять вновь созданные файлы если что то не нужно?

 

Коментариев: 1

 
  2011-05-27

Обновил Synphony.ru

Обновил synphony.ru.

- создан новый внешний вид
- добавлена английская версия

 

Оставить комментарий

 
  2011-05-24

Рубины на рельсах

Сел разбираться в Ruby - существо занятное, мне оно больше всего напоминает JavaScript, хотя синтаксис весьма безумен... Хотя... если разобраться так я могу и на JS написать так, что никто не поймет...

 

Оставить комментарий

 
  2011-05-20

Leverage browser caching

Для того чтобы проверить есть ли у сайта узкие места можно воспользоваться мега полезной штукой Page Speed Plugin. Работает в chrome и firefox. Оказывается на большинстве сайтов по умолчанию не выводятся заголовки которые говорят браузеру как правильно кешировать ресурсы

На linode.com для решение проблемы добавил в httpd.conf следующее:

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/x-icon "access plus 2 weeks"
    ExpiresByType image/png "access plus 2 weeks"
    ExpiresByType image/jpeg "access plus 2 weeks"
    ExpiresByType image/gif "access plus 2 weeks"
    ExpiresByType text/javascript "access plus 1 week"
    ExpiresByType text/css "access plus 1 week"
</IfModule>

На другом сервере указанное действо оказалось недостаточным пришлось добавить:

Header unset Pragma
FileETag None
Header unset ETag

И еще включил сжатие для некоторых файлов:
AddOutputFilterByType DEFLATE text/css application/x-javascript application/javascript

 

 

Оставить комментарий

 
  2011-05-05

Покупка Motorola Milestone 2 на Amazon

Сегодня великий день! Наконец пришёл мой Motorolla Milestone 2, который я заказал на Amazon. Вообще, я давно облизывался на этот телефон, и даже чуть не купил его в во время короткой экскурсии по Мюнхену.

Характеристики телефончика мне изначально понравились еще в первой модели, когда же появилась вторая версия я решил, что это именно то, что мне нужно - я очень уважаю Nokia, но после их последних стратегических соглашений с Microsoft я стал сильно сомневаться в будущем платформы Symbian.

HTC для меня пройденный этап, iPhone — интересно, но не сейчас, Android же, напротив, мне показался интересной альтернативой всем остальным платформам, благо, моделей под эту платформу создается все больше и больше.

Следует отметить, что этот телефон вообще не продается в России и купить его можно только за границей. Как следствие, на аппаратной клавиатуре не будет русских клавиш, поэтому, телефон подойдет не для всех а только для гиков вроде меня.

Аппарат тяжёлый, гораздо тяжелее Nokia 5800, по сравнению с ним Nokia выглядит совершенно несерьезно. Уровень звука в Milestone пониже чем у Nokia - правда, у жены SonyErricson i500 играет даже лучше нокии - поэтому любителям слушать шансон в подъезде этот телефон тоже не подойдет. Камера мне понравилась больше чем у Nokia 5800, качество снимков для телефона довольно неплохое. Понравилось, что наушники включаются обычным джеком а заряжать можно через разъем microUSB. Время работы от аккумулятора я еще не прочувствовал - телефон пришел полузаряженым, но через несколько часов он абсолютно разрядился, как только аккумулятор подраскачается можно будет сделать какие либо выводы.

Кратко по доставке с Amazon - телефон шёл безумно долго - сделал заказ 24 марта. Оплатил пластиковой картой за $524 плюс $45 доставка. Продавец — FGS Traging. Специально выбрал самую крутую доставку ибо обещали доставить за четыре дня. Действительно через четыре дня получил от продавца уведомление что заказ послан службой USPS. Еще через день при помощи трекинга я узнал что телефон благополучно отбыл из США и отправился ко мне самолетом из Майами. На этом следы телефона благополучно потерялись. Не через день, не через два никакие доблестные работники почты с толстой сумкой не ремне, разумеется в дверь не стучали. Через две недели через Amazon я поинтересовался у продавца — "where is my stuff"? Но что продавец мне очень вежливо написал, что мол, извините, но, это такая головная боль — посылать товары в Россию, и что они просят Amazon убрать опцию посылки в Россию - ибо, товары идут иногда по несколько месяцев, и злые русские пишут гневные письма продавцу и ставят негативные отзывы, что плохо сказывается на бизнесе в нормальных странах. Я написал продавцу что все нормально - продолжайте слать в Россию — все надежда только на вас, будем ждать.

И вот вчера, 4-ого мая, обнаружил в почтовом ящике квиток с почты. На следующий день рано утром пришел на почту, получил заветную бандероль. В картонном ящике был стандартный UPS пакет, в пакете коробка с телефоном. Коробка, как и пакет оказались распечатанными, а на телефоне обнаружился отчетливый отпечаток чьего то пальца, хотя никакой бумаги о том, кто и когда досматривал посылку, внутри не было. Почему бандероль пришла обычной почтой а не службой UPS, офис которой находится в паре кварталов от моего дома осталось для меня загадкой. Видимо, UPS доставила только до таможни а оттуда уже посылку просто отправили обычной почтой. К счастью, телефон пришёл в полном комплекте и в рабочем состоянии, за что спасибо всем участникам процесса.

Посылка шла ко мне 42 дня. Наверно почтальон шёл пешком из Москвы в Саратов неся мою драгоценную посылку. Так что, если захотите заказать телефон на Amazon а живете не в Москве - выбирайте самую дешёвую доставку - все равно скорее всего по России телефон будет послан обычной почтой. В общем, такие дела.

Все равно — то, что теперь можно покупать электронику на Amazon — это большущий шаг вперед. Хочется верить, что со временем и мы станем нормальной страной и я сменю метку гондурас в своем блоге на географическое название родной страны.

Upd. Опубликовал пост примерно такого же содержания у Вильянова на helpix.ru

 

Коментариев: 6