Восстановление базы данных MySQL из дампа

On 14/05/2012, in MySQL, by Алексей Волобуев

Восстановление базы данных MySQL из дампа

Восстановление базы из дампа происходит через Unix Shell, с использованием утилиты mysql:

>mysql -u<логин> -p -h<хост> -P<порт> -D <база> < database.sql

Бывает при восстановлении дампа получаются ошибки, например такие:

/usr/local/mysql/bin/mysql -D db_test --password=secret_passowrd --user=user < /root/test.sql ERROR 1064 at line 161: You have an error in your SQL syntax near 'option varchar(50) NOT NULL default , ordering int(11) NOT NULL default '0',' at line 9

Обычно это означает что какое-то имя столбца MySQL принял за ключевое слово, в этом случае нужно отредактировать дамп на указанной строчке (161) например с помощью Vi: имя столбца (в данном примере option) нужно заключить в `обратные кавычки`. Чтобы этого не происходило можно было при создании дампа запускать mysqldump с ключем --quote-name

Tagged with:  

Изменение структуры таблицы MySQL

On 14/05/2012, in MySQL, by Алексей Волобуев

Изменение структуры таблицы MySQL

Иногда структуру созданную с помощью CREATE TABLE нужно изменить. Проще всего это сделать на пустой таблице, иначе нужно смотреть чтобы в итоге преобразования не потерялись какие-то нужные данные. В любом случае, если вы делаете это первый раз, создайте заранее резервную копию базы. Изменение структуры:

Переименовать таблицу:

ALTER TABLE myfirsttable RENAME mysecondtable;

Переименовать столбец:

Читать далее »

Tagged with:  

Создание структуры таблицы MySQL

On 14/05/2012, in MySQL, by Алексей Волобуев

Создание структуры таблицы MySQL

CREATE TABLE test_innodb (
id int(11) NOT NULL auto_increment,
PRIMARY KEY (id) — основной ключ
) TYPE=InnoDB;

CREATE TABLE categories (
catid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
category VARCHAR(100) NOT NULL
);

CREATE TABLE items (
itemid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
catid INT,
FOREIGN KEY (catid) REFERENCES categories (catid), — внешний ключ
itemname VARCHAR(100) NOT NULL, — не может быть не заданно
itemdesc VARCHAR(255) NOT NULL,
imageurl VARCHAR(100),
itemcounter INT DEFAULT '1', -- значение по умолчанию '1'
access INT
);

Здесь нужно обратить внимание на понятия основного ключа (PRIMARY KEY), определяющего однозначно
каждую строку таблицы и внешнего ключа (FOREIGN KEY), определяющего зависимость данных в одной таблице от данных в другой таблице.

Tagged with:  

Просмотр структуры таблицы MySQL

On 14/05/2012, in MySQL, by Алексей Волобуев

Каждая таблица имеет собственную структуру (заданный набор столбцов). Просмотреть структуру таблицы можно так:

DESCRIBE tablename;
SHOW TABLE STATUS;

Tagged with:  

Примеры команды SHOW в MySQL

On 14/05/2012, in MySQL, by Алексей Волобуев

SHOW DATABASES; — список баз данных
SHOW TABLES [FROM db_name]; — список таблиц в базе
SHOW COLUMNS FROM таблица [FROM db_name]; — список столбцов в таблице
SHOW CREATE TABLE table_name; — показать структуру таблицы в формате «CREATE TABLE»
SHOW INDEX FROM tbl_name;— список индексов
SHOW GRANTS FOR user [FROM db_name]; — привилегии для пользователя.
SHOW VARIABLES; — значения системных переменных
SHOW [FULL] PROCESSLIST; — статистика по mysqld процессам
SHOW STATUS; — общая статистика
SHOW TABLE STATUS [FROM db_name]; — статистика по всем таблицам в базе

Tagged with:  
Яндекс.Метрика