MySQL — создание и управление базами данных
Для каждого сайта мы рекомендуем создавать отдельную базу данных. Для создания новой базы данных перейдите в раздел Базы данныхпанели управления хостингом, а затем выберите кнопку Создать базу.
В новом окне введите имя базы и нажмите кнопку Создать. В меню Принадлежность из выпадающего списка выберите сайт, который будет использовать данную базу, нажмите на кнопку Сохранить.
Далее нажмите на кнопку Добавить пользователя, где из выпадающего списка выберите необходимого MySQL-пользователя. В поле Права рекомендуется установить значение Полный доступ. Далее необходимо нажать кнопку Создать.
На этом настройка завершена. Теперь вы можете использовать базу данных для размещения нового сайта.
Подключение к серверу MySQL
Получить параметры для подключения к базе данных вы можете в разделе Базы данныхпанели управления хостингом. Для этого перейдите на вкладку Пользователи и нажмите на имя пользователя.
Здесь вы можете получить основную информацию для подключения к серверу. 
- Адрес сервера баз данных (хост): login.mysql, где login — уникальное имя услуги хостинга (указано в верхней правой части панели управления).
- Имя MySQL-пользователя (логин): login_mysql.
- Для получения пароля MySQL-пользователя нажмите кнопку Сбросить пароль. Новый пароль будет отображен на экране.
- При создании хостинга создается база данных с именем login_db.
В случае изменения пароля MySQL-пользователя, сайты, размещенные на хостинге и использующие данного MySQL-пользователя для подключения к базе, не смогут нормально работать, пока в скриптах пароль не будет изменен на новый.
Как войти в PHPMyAdmin?
Приложение PHPMyAdmin позволяет работать с базами данных через браузер. С его помощью вы можете редактировать содержимое базы, выполнять SQL-запросы, осуществлять резервное копирование и восстановление баз данных. Для доступа к PHPMyAdmin зайдите в панель управления хостингом, раздел Базы данных ->PHPMyAdmin.
Используйте данные MySQL-пользователя для авторизации.
Дамп базы MySQL
- Экспорт дампа базы данных Для создания резервной копии зайдите в интерфейс PHPMyAdmin.
- Слева на странице выберите нужную базу данных.
- Перейдите на вкладку Экспорт.

- При необходимости измените настройки экспорта и нажмите кнопку Вперед в нижней части страницы.

Файл с содержимым базы данных будет загружен на ваш компьютер. Для работы с базами большого объема рекомендуем воспользоваться подключением из командной строки.
- В левой колонке выберите новую базу данных.
- Откройте вкладку Импорт.
- Нажмите на кнопку Выберите файл и укажите файл дампа, сохраненный на вашем компьютере.
- Задайте кодировку файла (обычно она совпадает с кодировкой сайта).
- При необходимости измените настройки импорта и нажмите кнопку Вперед, дождитесь окончания импорта.

После того как база данных будет импортирована, измените в файлах конфигурации сайта название старой базы на новую, проверьте работоспособность. Для работы с базами большого объема рекомендуем воспользоваться подключением из командной строки.
Для создания дампа базы данных выполните команду:
mysqldump -y -f -q —default-character-set=binary —create-options —single-transaction —skip-extended-insert —add-drop-table -h dbhost -u dbuser -pdbpassword dbname > dump.sql
- dbhost — адрес сервера баз данных
- dbuser — имя MySQL-пользователя
- dbpassword — пароль MySQL-пользователя (пишется слитно с параметром -p)
- dbname — название базы данных
- dump.sql — название дампа базы данных. Дамп будет создан в текущем каталоге
Для импорта дампа в базу данных выполните команду:
mysql -h dbhost -u dbuser -pdbpassword dbname < dump.sql
Мы рекомендуем предварительно создать новую базу данных и выполнить в нее импорт дампа. Дамп базы данных должен быть загружен на хостинг (см. статью FTP — загрузка файлов на сервер )
После того как база данных будет импортирована, измените в файлах конфигурации сайта название старой базы на новую, проверьте работоспособность.
Удаленный доступ к базе данных MySQL
Изменение кодировки базы данных по умолчанию
- В левой колонке выберите нужную базу данных.
- Перейдите на вкладку Операции.
- В блоке Сравнение выберите utf8_general_ci.
- Нажмите кнопку Вперед.

Рекомендуется выбирать кодировку в соответствии с требованиями CMS или рекомендациями разработчика.
utf8_general_ci или utf8_unicode_ci — подходит для большинства CMS.
utf8mb4_unicode_ci или utf8mb4_unicode_520_ci — подходит для новых установок CMS на MySQL 5.6.
utf8mb4_0900_ai_ci — подходит для новых установок CMS на MySQL 8.
Информация для клиентов: +7 (495) 783-3-783; info@r01.ru
Техническая поддержка: +7 (495) 783-3-783; support@r01.ru
Центральный офис: г. Москва, Большой Гнездниковский переулок, дом 1, строение 2 ( м. «Тверская», выход №9, Бизнес-Центр «Вознесенский»).
#15 — Создание базы данных и подключение к ней

В этом уроке мы создадим и подключимся к базе даных используя PHP. Это позволит в дальнейшем работать с базой данных через код: добавлять записи, редактировать их, удалять, создавать новые таблички и так далее.
Видеоурок
Материалы для курса
Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт
Создание PHP+MySQL сайта: от простого к сложному — шаг первый
Для создания перспективного, расширяемого и эффективного сайта любой сложности следует начинать с простого. Это процесс нелёгкий, требует определённых базовых знаний PHP и MySQL, но если его рассмотреть по пунктам — то можно составить своего рода «рабочий план», который пригодится при создании новых сайтов. Подготовим «ядро» и базу для проекта. Вначале это будет обычный сайт визитка, но потом, добавляя функционал, его можна превратить во что угодно. Итак, приступим.
1. Подготовка базы данных. Создаём первую таблицу в БД MySQL
Создаём новую базу данных, например «mysite». Лично я привык работать с кодировкой UTF-8, по-этому сразу оговорюсь: проследите, чтобы все текстовые файлы сайта, сама база, таблицы и поля таблиц были в одной кодировке.
В новой базе делаем таблицу. Назовём её «pages». В этой таблице будут храниться статические страницы будущего сайта и информация о них. Таблица должна содержать следующие поля:
- page_id — идентификатор страницы (SMALLINT, primary key, auto_increment);
- page_alias — псевдоним страницы для строки адреса ЧПУ (VARCHAR, 255);
- page_title — название страницы в окне браузера (VARCHAR, 255);
- page_meta_d — мета описание страницы для тега meta description (VARCHAR, 255);
- page_meta_k — мета ключевые слова для тега meta keywords (VARCHAR, 255);
- page_h1 — заголовок страницы (VARCHAR, 255);
- page_s_desc — краткое описание материала, например если материалы сайта будут в виде блога (TEXT);
- page_content — основной текст страницы, который будет выводиться в центральную колонку сайта (TEXT);
- page_publish — содержит «Y» — если страница опубликована, или «N» — если она скрыта (CHAR, по умолчанию «Y»).
Сразу после создания таблицы вставляем в неё значения для главной страницы сайта. В поле «page_alias» для главной страницы предлагаю вставить значение «home». Метатеги — соответственно тематике всего сайта. Таким же образом можно посоздавать другие страницы, например «О компании» с алиасом «about» и своими метатегами, или «Контакты» с алиасом «contacts» и т.д.
2. Создаём файл конфигурации сайта
В корневой папке сайта, которая должна быть пуста на данном этапе, создаём папочку «cfg», в ней с помощью .htaccess закрываем доступ директивой «deny from all». Создаём файл core.php следующего содержания:
// MYSQL
class MyDB
var $dblogin = «root»; // ВАШ ЛОГИН К БАЗЕ ДАННЫХ
var $dbpass = «»; // ВАШ ПАРОЛЬ К БАЗЕ ДАННЫХ
var $db = «mysite»; // НАЗВАНИЕ БАЗЫ ДЛЯ САЙТА
var $dbhost=»localhost»;
var $link;
var $query;
var $err;
var $result;
var $data;
var $fetch;
function connect() $this->link = mysql_connect($this->dbhost, $this->dblogin, $this->dbpass);
mysql_select_db($this->db);
mysql_query(‘SET NAMES utf8’);
>
function close() mysql_close($this->link);
>
function run($query) $this->query = $query;
$this->result = mysql_query($this->query, $this->link);
$this->err = mysql_error();
>
function row() $this->data = mysql_fetch_assoc($this->result);
>
function fetch() while ($this->data = mysql_fetch_assoc($this->result)) $this->fetch = $this->data;
return $this->fetch;
>
>
function stop() unset($this->data);
unset($this->result);
unset($this->fetch);
unset($this->err);
unset($this->query);
>
>
Этот файл пока содержит только простой класс подключения к базе данных, но в дальнейшем в него можно добавлять разные полезные функции, которые будут доступны из любого места в коде сайта. Не забудьте изменить логин и пароль к Вашей базе.
Если Вы работаете в среде Windows, я могу порекоммендовать использовать редактор Notepad++. В этом редакторе есть нумерация строк, и он легко переводит текст из одной кодировки в другую. ВНИМАНИЕ! Если Вы работаете в кодировке UTF-8 — конвертируйте файлы в UTF-8 without BOM — это поможет избежать проблем в будущем.
3. Создаём index.php — главный контроллер сайта
Файл конфигурации создан. Теперь в корневой папке сайта создаём index.php — это и будет основной скрипт сайта, своего рода «главный контроллер». Содержание файла index.php:
define(«INDEX», «»); // УСТАНОВКА КОНСТАНТЫ ГЛАВНОГО КОНТРОЛЛЕРА
require_once($_SERVER[DOCUMENT_ROOT].»/cfg/core.php»); // ПОДКЛЮЧЕНИЕ ЯДРА
// ПОДКЛЮЧЕНИЕ К БД
$db = new MyDB();
$db->connect();
// ГЛАВНЫЙ КОНТРОЛЛЕР
switch ($_GET[option]) case «page»:
include($_SERVER[DOCUMENT_ROOT].»/com/page.php»);
break;
default:
include($_SERVER[DOCUMENT_ROOT].»/com/home.php»);
break;
>
include ($_SERVER[DOCUMENT_ROOT].»/template.php»);
$db->close();
Переменная $_GET[option] будет указывать главному контроллеру какой компонент сайта загружать при запросе. Сейчас в нашем сайте предусмотрено только два компонента: «страница» и «главная страница» (в принципе можно обойтись и одним компонентом вывода обычной страницы, но часто вид главной страницы сайта отличается от обычных страниц пунктов меню). Логика работы главного контроллера такова: из URL строки извлекается название нужного компонента (значение переменной $option), в зависимости от его значения подключается файл самого компонента (содержится в папке /com). Файл компонента выполняет все необходимые работы, извлекает из базы данные и записывает их в переменные, для передачи в шаблон дизайна. В самом конце подключается файл дизайна сайта, в который и передаются все переменные и данные, извлечённые в компонентах. Это звучит намного сложнее, чем работает.
4. Создаём компонент вывода обычной страницы
В корне сайта создаём папочку «com» — в ней будут храниться файлы компонентов. Компонент сайта, в моём понимании — это файл, в котором происходит обработка данных для разных разделов сайта. Например компонент обычной страницы извлекает из базы данных название, описание и текст материала, и записывает их в переменные $title, $meta_d, $meta_k, $content и др. Эти данные потом передаются в шаблон дизайна (под каждый компонент можно создавать свой шаблон дизайна) и выводятся пользователю в виде HTML-страницы. Например, компонент каталога, который можно создать в будущем, выполнял бы почти то же самое, но с данными про товары — а там своя специфика, другие поля в таблице, итд. По-этому для каждого функционального раздела сайта стоит создавать отдельный компонент. В схеме MVC (Model-View-Controller) компонент выполняет роль модели.
Создаём в папке «com» файл «page.php». Содержимое файла следущее:
/* КОМПОНЕНТ СТРАНИЦЫ */
$alias = $_GET[alias];
$query = «SELECT * FROM pages WHERE page_alias='».$alias.»‘ AND page_publish=’Y’ LIMIT 1″;
$db->run($query);
$db->row();
// ПЕРЕМЕННЫЕ КОМПОНЕНТА
$id = $db->data[page_id];
$alias = $db->data[page_alias];
$title = $db->data[page_title];
$h1 = $db->data[page_h1];
$meta_d = $db->data[page_meta_d];
$meta_k = $db->data[page_meta_k];
$s_desc = $db->data[page_s_desc];
$component = $db->data[page_content];
// ЕСЛИ СТРАНИЦЫ НЕ СУЩЕСТВУЕТ
if (!$id) header(«HTTP/1.1 404 Not Found»);
$component = «ОШИБКА 404! Данной страницы не существует»;
>
$db->stop();
5. Создаём компонент вывода главной страницы
Главная страница у нас в базе данных хранится под псевдонимом «home», и пока по своей структуре не отличается от обычных страниц сайта — это просто статья. Тем не менее создадим для неё отдельный компонент — на перспективу, так сказать.
Содержимое компонента «home.php» в папке «com» почти совпадает с содержимым компонента обычной страницы, за исключением строки запроса к базе и названия компонента. Строка запроса теперь выглядит так:
$query = «SELECT * FROM wx_pages WHERE page_alias=’home’ LIMIT 1»;
6. Создаём шаблон дизайна всего сайта
В корне сайта создаём файл template.php. По сути это обычный макет web-дизайна в формате HTML+CSS, только с PHP переменными в нужных местах. Между тегами title вставочка , в центральной колонке сайта вставочка и так по всему шаблону расставляем нужные переменные, которые объявлены в компонентах.
В корневой папке также должны быть папки «css» и «images» для элементов дизайна. В файле /css/style.css — можно настроить стили по своему усмотрению.
7. Чистые ссылки и файл .htaccess
Для создания чистых ссылок я использую mod_rewrite с прямыми указаниями правил для каждого компонента отдельно, так как разбор адресной строки средствами самого контроллера считаю излишним функционалом. Содержимое .htaccess на данном этапе такое:
# ЗАПРЕЩЁННЫЕ ФАЙЛЫ
RewriteRule .htaccess — [F]
RewriteRule template.php — [F]
# ПРАВИЛА mod_rewrite
RewriteRule page/([a-z0-9_-]+)([\/])\.htm$ index.php?option=page&alias=$1 [L]
В будущем мы будем дописывать правила для компонентов поиска, каталога, блога статей и т.д. Смысл один: преобразовать ссылки вида «mysite.com/index.php?option=pages&alias=about» в ссылку вида «mysite.com/pages/about.htm» — смотрится довольно красиво. Старайтесь в разработке избегать массива $_GET в целях безопасности и не надеяться на него. Целесообразно хранить в нём только параметры для главного контроллера (переменная $option) и для компонента (переменная $alias).
Также в каждой папке сайта «на всякий случай» создайте пустой файл index.html — это нужно для того, чтобы при обращении к каталогу через адресную строку ничего не отображалось.
Как создать базу данных MySQL в phpMyAdmin
База данных (БД) — это организованная структура, предназначенная для хранения/изменения/обработки взаимосвязанной информации. MySQL — это система управления базами данных (СУБД). В свою очередь, phpMyAdmin — это специальное веб-приложение, предназначенное для администрирования СУБД MySQL. В нашей статье мы подробно расскажем, как работать с интерфейсом phpMyAdmin, как создать базу данных в этом приложении и как ее потом удалить.

Изображение от Freepik.
Создание новой базы в phpMyAdmin: инструкция 2024
Переходим в phpMyAdmin. Для создания базы данных выбираем команду «Создать БД» в левой части интерфейса.

В поле «Имя базы данных» придумываем название, обычно его берут из названия сайта/домена. Кодировку оставляем «utf8mb4_general_ci». Нажимаем кнопку «Создать».

В столбце слева отобразится новая база данных. Для примера создадим таблицу с пользователями — назовем ее «users». Количество столбцов зададим «4» (если вы планируете собирать больше данных о пользователях, то введите большее число). Нажимаем кнопку «Вперед».

Теперь в режиме конструктора мы должны разработать структуру таблицы «users».
-
Первое поле — поле идентификации (userID). Тип — целочисленный (INT), так как это автоинкремент. Поэтому сразу укажем это, нажав на галочку в пункте «A…I». Имя индекса — «PRIMARY» (первичный ключ), так как значения в поле «userID» повторяться не будут. Нажимаем кнопку «Вперед».




Вы можете создать столько полей, сколько нужно для вашего проекта. Для примера мы ограничимся этими тремя полями. Нажимаем «Сохранить».

Отлично, база данных создана успешно.
Как работать с интерфейсом phpMyAdmin
После сохранения в базе появится таблица «users». При переходе в нее отобразится ее структура, где указаны названия атрибутов, типы данных, какой из полей будет автоинкрементом (будет нумероваться автоматически). Желтый ключ показывает, что это первичный ключ, а серый — поле с уникальными значениями.

Во вкладке «Обзор» можно посмотреть саму таблицу. Так как мы создали новую БД, она пока пустая.

Попробуем вставить одну строку в таблицу. Для этого нажимаем на «Вставить». Поле userID формируется автоматически, а userlogin и userpassword заполняем самостоятельно. Нажимаем кнопку «Вперед».

Во вкладке «Обзор» появились данные о пользователе, которые мы добавили ранее. Их можно изменить, копировать, удалить или экспортировать.

Теперь вы знаете больше о том, как работать с базами данных в phpMyAdmin.
Заключение
Без базы данных не обходится практически ни один проект в интернете. Поэтому навык работы с панелью phpMyAdmin — необходимость для программистов и вебмастеров. Надеемся, наша статья была полезной!