Кві 132013
 

Как изменить кодировку MySQL базы данных или таблицы. Настройка collation для работы с MySQL.

При запросе к базе данных желательно задать Кодировку с которой будет работать клиент с сервером:

set character_set_client='cp1251
set character_set_results='cp1251
set collation_connection='cp1251_general_ci

Изменяем кодировку для базы данных:

ALTER DATABASE `имя базы` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci;

Изменяем кодировку для таблицы:

ALTER TABLE `tablename` CONVERT TO CHARACTER SET cp1251 COLLATE cp1251_general_ci;
ALTER TABLE `tablename` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci;

изменить, кодировка, mysql, базы данных, таблица, collation, Настройка, DATABASE, set, character_set_client, character_set_results, collation_connection, ALTER, TABLE

Січ 182013
 

Добавляем более одного, два и более IP в CentOS 5

Обычно мы используем на одно устройство по одному IP адресу.
Но допустим Вам необходимо настроить какое то устройство которое подключили удаленно, и оно находится в другой под сети.

У нас есть один IP на интерфейсе eth0:

eth0 Link encap:Ethernet HWaddr 00:26:B9:2A:B9:13
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0

Нам нужен еще один IP на том же сетевом интерфейсе (пусть для определенности это будет 192.168.20.200).
Для этого нужно отправится в директории /etc/sysconfig/network-scripts/

Скопировать существующий интерфейс:

cp ifcfg-eth0 ifcfg-eth0:0

Отредактировать скопированный файл:

nano ifcfg-eth0:0
DEVICE=eth0:0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.20.200
NETMASK=255.255.255.255

После проделанных процедур нужно перезапустить сетевые службы:

service network restart

Выполняем ifconfig и видим, что появился “алиас” eth0:0

eth0:0 Link encap:Ethernet HWaddr 00:26:B9:2A:B9:13
inet addr:192.168.0.200 Bcast:192.168.0.11 Mask:255.255.255.255
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:185 Base address:0xa000

Если потребуется добавить еще несколько IP, то добавляем соответственно файлы ifcfg-eth0:X, где X – 1,2,3 и так далее.
(ifcfg-eth0:1, ifcfg-eth0:2, ifcfg-eth0:3)

Если требуется “навесить” на сетевой интерфейс последовательность из IP-адресов (допустим такой вот диапазон: (192.168.0.200-220), то можно воспользоваться следующей конфигурацией.
Создаем файл /etc/sysconfig/network-scripts/ifcfg-eth0-range0:

IPADDR_START=192.168.0.200
IPADDR_END=192.168.0.220
NETMASK=255.255.255.255
CLONENUM_START=1
NO_ALIASROUTING=yes

Перезапускам сетевые службы:

service network restart

В результате появятся 20 алиасов.

Если Вам необходимо разово добавить адресс из командной строки, достаточно ввести:

ifconfig eth0:0 inet 192.168.0.200/32
Січ 052013
 

Export(Экспорт) MySQL в Excel реализация на PHP

Однажды мне понадобилось записать данные из базы данных MySQL в Microsoft Excel используя PHP скрипт.
Сейчас я продемонстрирую вам код который в дальнейшем поможет Вам.

<?php
mysql_connect(“localhost”,”root”,”root”);
mysql_select_db(“employee”);
$qry_data=mysql_query(“SELECT * FROM personal ORDER BY nip”);

function xlsBOF() {
echo pack(“ssssss”, 0×809, 0×8, 0×0, 0×10, 0×0, 0×0);
return;
}
function xlsEOF() {
echo pack(“ss”, 0x0A, 0×00);
return;
}
function xlsBuatBaris($data, $Col, $Value) {
echo pack(“sssss”, 0×203, 14, $data, $Col, 0×0);
echo pack(“d”, $Value);
return;
}
function xlsBuatLabel($data, $Col, $Value ) {
$L = strlen($Value);
echo pack(“ssssss”, 0×204, 8 + $L, $data, $Col, 0×0, $L);
echo $Value;
return;
}
header(“Pragma: public”);
header(“Expires: 0″);
header(“Cache-Control: must-revalidate, post-check=0, pre-check=0″);
header(“Content-Type: application/force-download”);
header(“Content-Type: application/octet-stream”);
header(“Content-Type: application/download”);;
header(“Content-Disposition: attachment;filename=employee.xls “);
header(“Content-Transfer-Encoding: binary “);

xlsBOF();

xlsBuatLabel(0,0,”DAFTAR DATA PRIBADI”);

xlsBuatLabel(2,0,”NIP”);
xlsBuatLabel(2,1,”NAMA”);
xlsBuatLabel(2,2,”ALAMAT”);
xlsBuatLabel(2,3,”KELAMIN”);
xlsBuatLabel(2,4,”TGL LAHIR”);

$xlsRow = 3;

while($data=mysql_fetch_array($qry_data)){
xlsBuatBaris($xlsRow,0,$data['nip']);
xlsBuatLabel($xlsRow,1,$data['nama']);
xlsBuatLabel($xlsRow,2,$data['alamat']);
xlsBuatLabel($xlsRow,3,$data['kelamin']);
xlsBuatLabel($xlsRow,4,$data['tgl_lahir']);

$xlsRow++;
}

xlsEOF();
exit();
?>
Січ 052013
 

Как сделать beckup для mysql database windows

Сейчас я вам покажу как сделать beckup для mysql database в windows. Для начала откройте cmd в windows.
Пуск -> Выполнить -> cmd

Путь к командам MySQL, указан из текущей конфигурации. В каждом случае он может быть иным. Вам необходимо найти команду mysqldump.exe
C:\Program Files\mysql\bin\mysqldump.exe -uroot -ppassword namedatabase > C:\temp\ws-dump

Вместо пользователя root MySQL, вы можете заменить на ваше имя пользователя и так же поступить и с полем password, заменить пароль и изменить имя вашей базы данных, если все поля вы ввели правильно, то операция будет выполнена успешно, база данных MySQL отправится в C:\temp\ws-dump

Січ 052013
 

Сброс привилегий для MySQL root аккаунта windows, unix, debian, freebsd, centos

Я работал с HeidiSQL фронт-енд для MySQL и каким-то образом удалось удалить все привилегии из базы данных root аккаунта во время редактирования других учетных записей пользователей. Само собой разумеется, ни один из других аккаунтов не имел доступ к административной части MySQL.

Как восстановить доступ к MySQL root аккаунту

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

1. Перейдите в папку установки MySQL.
Возможный путь к MySQL серверу

Windows:
C:/Program Files/MySQL/MySQL Server 5.1
Debian:
/etc/mysql/
FreeBSD:
/var/db/mysql
CentOS:
/etc

Нахождение конфигурационного файла может отличатся.

2. Откройте файл my.ini в вашем текстовом редакторе
В некоторых версиях MySQL этот файл называется my.cnf

3. В [mysqld] данного файла добавьте следующие строки:

skip-grant-tables

4. Перезапустите сервер MySQL, допустим в Service Manager в Windows.

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