Автор: NAДобавили: 22-05-2010, 09:45Посмотрели: 1786 раз
Работа с mysql-сервером (Из-под командной строки)
Сегодня заметил, что тут нет простого мана, как работать с mysql-сервером без разных там навикатов и пхпадминов. Решил написать основные операции, не буду расписывать все до мелочей, если кому интересно читайте, так как там много всего интересного, а переписывать сюда документацию бессмысленно.
GRANT ALL PRIVILEGES ON `бд`.`таблица` TO 'юзер'@'хост';
Если хотите дать права на все Бд, вместо `бд` пишите * Если хотите дать права на все таблицы, вместо `таблица` пишите *
Показать права пользователя:
Code
SHOW GRANTS FOR 'юзер'@'хост';
Показать БД:
Code
SHOW DATABASES;
Создать БД:
Code
CREATE DATABASE имя_бд;
Выбрать одну из БД:
Code
USE бд;
Вывести список таблиц в БД:
Code
SHOW TABLES;
Показать структуру таблицы
Code
SHOW COLUMNS FROM таблица;
Создание дампа БД:
Code
# mysqldump -u ЮЗЕР -p БД > Файл.sql
Заливка дампа:
Code
# mysql -u ЮЗЕР -p БД < Файл.sql
Работа с данными:
Выбор:
Code
SELECT `что-то`,`еще_что-то` FROM `таблица`;
Выбор по критериям:
Code
SELECT `что-то`,`еще_что-то` FROM `таблица` WHERE `ключ`='значение';
или:
Code
SELECT `что-то`,`еще_что-то` FROM `таблица` WHERE `ключ` IN ('значение1','значение2','значение3');
Удаление:
Code
DELETE FROM `таблица` WHERE `ключ`='значение';
Добавление:
Code
INSERT INTO `таблица` (`ключ1`,`ключ2`,`ключ3`) VALUES ('значение1','значение2','значение3');
Для замены уже существующих данных используйте вместо INSERT - REPLACE
Изменение значений:
Code
UPDATE ` таблица` SET `ключ1`='значение1' WHERE `ключ0`='значение0';
Если не использовать WHERE, для описанных выше действий, то действие будет применено на всю таблицу.
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.