Бояны на память: Работа с MySQL.

Ноя 3rd, 2009 | Posted by | Filed under boyany, Database

Записываю просто как набор хинтов или как подсказку, чтобы не искать каждый раз…

1. Просмотр баз.

mysqlshow -u USERNAME -pPASSWORD

ВАЖНО! между «-u» и «USERNAME» пробел обязательно, а между «-p» и «PASSWORD» никаких пробелов!

Команда покажет список имеющихся на сервере баз.

mysqlshow -u USERNAME -pPASSWORD DATABASENAME

mysqlshow -u USERNAME -pPASSWORD DATABASENAME TABLENAME

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

2. Подключение к БД.

mysql -u USERNAME -pPASSWORD

3. Заведение нового пользователя на сервере.

mysql> create user USERNAME@HOST;

ВАЖНО! Нужно предварительно соединиться с сервером (см. п.2.) «mysql> » писать не нужно, это приглашение, которое напишет mysql.

HOST может быть таким:

localhost — только для подключений с самого сервера, на котором установлена БД.

% — для подключений с любого сервера.

ИМЯ_ХОСТА — для подключений с конкретного разрешенного хоста.

4. Установка пароля для пользователя.

mysql> set password for USERNAME@HOST = password(‘PASSWORD’);

5. Раздача прав пользователю mysql.

mysql> connect DATABASE;

mysql> grant PRIVILEGELIST on *.* to USERNAME@HOST;

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

mysql> alter table TABLE change OLD_COLUMN_NAME NEW_COLUMN_NAME COLUMN_TYPE;

Можно переименовать столбец из «OLD_COLUMN_NAME» в «NEW_COLUMN_NAME» или поменять его тип на «COLUMN_TYPE».

7. Выборка из таблицы.

mysql> select CONUMN_NAME1[, COLUMN_NAME2[, …]] from TABLE where EXPRESSION;

mysql> select * from TABLE where EXPRESSION;

8. Обновление поля таблицы.

mysql> update TABLE set COLUMN_NAME1 = VALUE1[, COLUMN_NAME1 = VALUE1[, …]] where EXPRESSION;

В качестве EXPRESSION пишется логическое выражение, которое может принимать значение TRUE для обрабатываемых записей таблицы или FALSE для пропускаемых. Пример: where username like ‘edward%’.

No comments yet.