Все ленты — последние статьи

Установка mysql в Ubuntu 13.04 — 12.04

Автор: Edward Kobylyanets  

В этой статье я расскажу, как установить mysql сервер и клиент, графическую оболочку workbench для работы с mysql сервером. А также расскажу, как решить проблему с кодировкой сервера. Так как по умолчанию на сервере используется кодировка latin1.


1. Установка Mysql сервер и клиент.
Для установки открываем консоль и вводим:
sudo apt-get install mysql-server mysql-client

В процессе установки, в консоле будет затребовано ввести пароль администратора сервера mysql. Введите дважды его (для перехода в консоле к кнопочке "ок" используется клавиша "Tab" если кто не в курсе :) ). Всё, ожидаем окончание установки

 

Проверяем работоспособность.
Вводим в терминале команду, чтобы зайти на сервер:
mysql -uroot -p
У вас будет запрошено ввести пароль, вводим, и если успешно, то появиться: Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 50
Server version: 5.5.31-0ubuntu0.12.04.2 (Ubuntu)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
Можете теперь вводить sql команды (книги по sql в помощь). Также можете ввести /h появится список вспомогательных команд.

Что нужно сделать, чтобы подключаться к серверу mysql из вне, а не только локально?
Открываем в текстовом редакторе из под админа конфиг mysql сервера.
sudo gedit /etc/mysql/my.cnf
И находим строчку: "bind-address = 127.0.0.1" и закомментируем ее, придав ей вид:
#bind-address = 127.0.0.1 (знак # означает то, что последующее в строке не будет выполняться и учитываться).
То есть должно получиться так:


Всё. Сохраняем и перезапускаем сервис mysql:
sudo service mysql restart

Для того, чтобы остановить сервер, команда: sudo service mysql stop Для того, чтобы запустить: sudo service mysql start

2. Установка графического клиента для работы с Mysql.
Кто-то может возразить и сказать, что нужно ставить phpMyAdmin. Ваше решение, я с ним не работал, поэтому расскажу про то, что использую в работе WorkBench.
Кстати, для установки phpMyAdmin:
sudo apt-get install phpmyadmin

Для установки WorkBench аналогичная команда: sudo apt-get install mysql-workbench

Открываем программу:


Первое, что делаем, это создаем новое соединение (new connection):


В имени указываем то, что хотим.
Остальные настройки по стандарту уже стоят, разве что вам нужно будет сменить username, если вы не под root заходите, либо сменить hostname, прописать ваш IP. Далее жмем "тест". Вводим пароль, если все хорошо, то жмем "ok".
Потом Вы просто будете нажимать "открыть соединение".

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

По этому поводу всё.

3. Разберемся с кодировкой сервера Mysql.

Открываем соединение в WorkBench и выполняем sql запрос, либо в консоле то же самое:
mysql> SHOW VARIABLES LIKE 'char%';
Появится сообщение с кодировками MySql:


Видим, что кодировка сервера не UTF8, будет проблема с отображением русских символов.

Это легко исправляется:
Открываем в текстовом редакторе из под админа конфиг mysql сервера.
sudo gedit /etc/mysql/my.cnf
И нужно в следующих пункта добавить следующие строчки:

    [mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    init_connect='SET collation_connection = utf8_general_ci'
    init_connect='SET NAMES utf8'
    skip-character-set-client-handshake

    [client]
    default-character-set=utf8

    [mysqldump]
    default-character-set=utf8

 После чего, перезапускаем сервис mysql. Выше написано как это делать.

И выполняем команду, для просмотра кодировок.
Теперь везде будет utf8:


Если будет интересно, могу в следующих статьях рассказать подробнее о работе в MySQL WorkBench.