Как создать mysql базу данных на компьютере

Обновлено: 07.07.2024

Создание баз данных и использование их в своих веб страницах – это достаточно мощный инструмент, решающий множество задач веб разработки. Этой статьей я хочу открыть серию уроков, которые помогут Вам в работе с базами данных MySQL.

Данная статья будет посвящена установке MySQL на Ваш компьютер и основным операциям, связанными с созданием баз данных, созданием таблиц, установки привилегий, удаления базы данных. А в последующих уроках мы рассмотрим взаимодействие программного кода php с базой данных. Мы научимся вставлять данные в базу, посредствам заполнения форм, извлекать нужные данные в нужное место страницы, изменять и удалять данные, расположенные в базе.

Возможно у Вас возникнет вопрос: так ли необходимо устанавливать MySQL на локальный компьютер, если сейчас каждый хостинг провайдер предоставляет возможность пользования базой данных MySQL? Это так, но существует ряд причин, по которым я бы советовала Вам установить базу данных MySQL на свой компьютер.

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

Во-вторых: Обычно редко когда получается с первого раза написать код без каких-либо косяков и ошибок. Согласитесь, что гораздо лучше сначала довести Ваш код до ума и протестировать на своей машине, нежели выкладывать и исправлять код в сети.

В-третьих: устанавливая базу данных MySQL у себя на компьютере и работая там с ней, Вы гораздо лучше и быстрее научитесь ориентироваться во всех нюансах и тонкостях, гораздо быстрее разберетесь в MySQL.

Очень полезным и удобным инструментом, который позволяет создавать базы данных MySQL и работать с ними я является Denwer. Он также позволяет тестировать код php. Если он еще не установлен на Вашем компьютере, обязательно его установите. Здесь нет ничего сложного. Все что от Вас потребуется это перейти по ссылке на сайт Denwer , скачать Денвер на Ваш компьютер. На этой же странице Вы найдете подробную инструкцию по установки Денвера, которую я не вижу смысла переписывать в эту статью.

После удачной установки Денвера (когда Вы увидели надпись «Ура, заработало!») начнем работу с администраторской страницей MySQL.


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

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


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

Здесь Вам будет предложено создать таблицу. Давайте создадим таблицу базы данных. Для этого заполните поля «Имя» и «Количество столбцов» и нажмите Ок.


После этого перед Вами откроется страница для заполнения полей новой таблицы базы данных. Здесь каждому полю нужно присвоить имя, тип хранимых данных, длину (если требуется для данного атрибута) и для такого поля как идентификатор (id) также требуется указать авто-инкремент и первичный ключ. Это должно выглядеть как на скриншоте ниже.

Немного о типах данных.

В моем примере нам встретились такие типы данных для таблицы базы как int и varchar.

Int – обозначает, что в данном поле будут храниться целые числа (поле id). Id будет являться идентификатором и для каждого нового элемента он будет разным. При добавлении нового элемента в таблицу, id будет увеличиваться на единицу по сравнению с предыдущим добавленным элементом (именно поэтому поле id должно иметь авто-инкремент (авто приращение) и первичный ключ). С помощью этого поля можно идентифицировать объекты, оно очень поможет нам, когда мы начнем взаимодействовать с базой данных с помощью кода php.

Существуют и разные другие типы данных, предназначенные для хранения даты, текста и других данных. Вы можете поискать информацию о типах данных в интернете. Также о них я буду рассказывать в следующих уроках.

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


Здесь можно удалить, изменить и добавить поле. Интерфейс интуитивно понятный и сделать это не составит какого-либо труда.

Сейчас же я покажу как вставить новый элемент в таблицу базы данных.

Для этого кликните по верхней вкладке «Вставить» и перед Вами откроется страница для вставки нового элемента в таблицу базы. Заполните все поля (кроме поля id, оно будет заполняться автоматически) и нажмите на кнопку ОК.


После того как Вы нажмете Ок, перейдите на вкладку «Обзор» (она находится вверху) и Вы увидите новый добавленный Вами элемент в Вашу таблицу базы данных MySQL.


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

Теперь я расскажу Вам как создать нового пользователя для базы данных, создать ему имя и пароль и выставить ему определенные привилегии. Информация об имени пользователя и пароле понадобится нам, когда мы будем соединяться с базой при помощи php скрипта.

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


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

Здесь Вы также можете редактировать привилегии, нажав на редактирование привилегий. Это может понадобиться в том случае, если кто-то еще должен иметь доступ к Вашей базе, но Вы хотите ограничить этого человека в привилегиях (например он не может удалять данные). Тогда Вы создаете нового пользователя для Вашей базы данных, но выставляете ему определенные привилегии.

Наконец, чтобы удалить базу данных нужно снова перейти на вкладку «Базы данных», выбрать базу для удаления и нажать на ссылочку удалить.


Здесь мы рассмотрели основные операции взаимодействия с базой данных, через панели администрирования.

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

Это только начало, дальше будет гораздо интереснее. Если Вы еще не подписаны на обновление блога, подписывайтесь с помощью формы ниже, чтобы не пропустить новые уроки о работе с базами данных и не только.

Также жду Ваших комментариев на эту тему. Если статья была Вам полезна поделитесь ей с друзьями с помощью кнопок социальных сетей.

Дельфины всегда вызывали доверие у людей. Они ассоциируются у нас с добротой и радостью. Хоть дельфин и является символом MySQL , но это никак не объясняет той популярности, которой она пользуется во всем мире:


Согласно актуальной статистике MySQL занимает первое место по распространенности в интернете среди всех систем реляционных БД.

Особенности MySQL

Процедура создания базы данных MySQL ничем не отличается от других СУБД . Да и ее бесплатность тоже едва ли является основной причиной популярности данной системы. Например, SQL Server от Microsoft . В каждой версии данного продукта выходит его бесплатная редакция, и с довольно неплохими техническими характеристиками.

Особенности СУБД MySQL :

  • Чаще всего используется в качестве удаленного сервера;
  • Включает в себя большое количество типов таблиц;
  • Поставляется со специальным типом EXAMPLE , показывающим принцип создания новых таблиц;
  • Высокая степень масштабируемости за счет поддержки большинства популярных платформ;
  • Открытый исходный код – благодаря этому данная СУБД постоянно совершенствуется и модернизируется множеством разработчиков по всему миру;
  • Создано большое количество API , обеспечивающих взаимосвязь MySQL c основной частью всех программных языков;
  • Максимальный размер файла таблицы базы данных ограничивается лишь возможностями используемой операционной системы.

У ближайшего конкурента MySQL системы MS SQL Server в бесплатной редакции Express ограничение на размер базы данных составляет 10 ГБ.

Особенности MySQL

  • Последняя версия СУБД 5.7.5m15 ( тестовая ) вышла в сентябре 2014.

Создание базы данных MySQL

Основной логической и структурной единицей деления данных в любой реляционной модели представления информации является база. Выше нее идет лишь сервер. Любая база данных состоит из таблиц, каждая из которых делится на столбцы. Рассмотрим все способы, как создать в MySQL базу данных.

Среда PHPMyAdmin является одной из самых популярных оболочек для работы с MySQL . Ее интерфейс во многом облегчает администрирование баз данных.

Для создания базы данных MySQL через PHPMyAdmin делаем следующее:

  • Заходим в оболочку;
  • Переходим на вкладку « Базы данных »;
  • В первое поле вводим название создаваемой базы данных, а из выпадающего списка выбираем нужную кодировку. В нашем случае это utf8_genegal_ci .

Длина имени базы данных не должна превышать 64 символа.

Создание базы данных MySQL

  • После этого имя созданной БД MySQL должно появиться в списках слева и внизу:

Создание базы данных MySQL - 2

Теперь создадим в нашей базе данных первую таблицу. Делаем следующее:

  • В списке слева находим имя нашей базы данных и нажимаем на него:


  • В следующем окне вводим название таблицы и задаем количество столбцов;
  • Затем нажимаем на кнопку « Ok ».

То же самое можно сделать, нажав на ссылку «Создать таблицу» сразу под списком баз данных слева, но тогда в следующем окне выведется заготовка без имени и с четырьмя столбцами.

  • Следующим шагом задаем структуру нашей таблицы. Прописываем имена и типы данных, которые будут храниться в столбцах таблицы;
  • После этого нажимаем на кнопку « Сохранить »:


  • Таблица нашей БД MySQL создана и готова для заполнения данными:


Но это не единственный способ, как можно создать базу данных в PHPMyAdmin . Аналогичный эффект можно получить, если воспользоваться SQL запросом. Для этого применяется команда CREATE . Ее синтаксис:

  • IF NOT EXISTS – служит для отслеживания уникальности имени базы данных. Если не указывать этот параметр, то в случае создания базы с одинаковым названием может возникнуть ошибка выполнения запроса;
  • db_name – указывается имя создаваемой базы данных;
  • CHARACTER SET charset – устанавливается кодировка базы данных. Если не указано, то используется значение по умолчанию;
  • COLLATE collation – задается порядок сортировки данных. Необязательный параметр.

Теперь создадим базу данных с помощью SQL запроса через оболочку PHPMyAdmin :

  • Переходим на вкладку « SQL »;
  • В появившемся окне редактора вводим запрос на создание базы данных;
  • Или жмем на иконку « Окно запроса ». Она находится слева над списком баз данных:



  • После этого название нашей базы данных отобразится в списке слева:


  • Запрос для создания базы данных с указанием необязательных параметров будет выглядеть следующим образом:


Настройка резервного копирования базы данных

Возможность восстановления базы данных очень важна. В случае непредвиденных ситуаций восстановление поможет вернуть утраченную информацию и быстро возобновить работу ресурса.

Настраиваем резервное копирование базы данных в PHPMyAdmin . Порядок действий:

  • В списке слева выбираем нужную нам базу данных;
  • Жмем на вкладку « Экспорт »;
  • Нажимаем « Ок ».

Настройка резервного копирования базы данных

Если в разделе « Способ экспорта » выбрать значение « Обычный », то перед вами раскроется большое окно с множеством параметров для настройки:

Настройка резервного копирования базы данных - 2

Теперь попытаемся восстановить сохраненную копию базы. Но для начала удалим уже существующий экземпляр. Переходим во вкладку « Операции » и нажимаем ссылку « Удалить базу данных »:


Для восстановления базы MySQL в PHPMyAdmin переходим на вкладку « Импорт ». В разделе « Импортируемый файл » в зависимости от места, где вы сохраняли копию базы данных, выбираем источник. После этого жмем на кнопку « ОК », расположенную в нижней части экрана:


Иногда после внесения каких-либо изменений требуется восстановить не всю базу данных, а лишь определенную таблицу. Такая возможность также реализована в PHPMyAdmin . Для этого на странице нужной таблицы внизу ее структуры из выпадающего списка выбираем соответствующий пункт и внизу жмем на « Ок »:


Сжатие баз данных в MySQL

К сожалению, в MySQL изменение или ограничение размера баз данных не поддерживается. Из средств, встроенных в PHPMyAdmin для этого можно использовать лишь оптимизацию таблиц. Данная операция является еще одним параметром из выпадающего списка, изображенного выше.

Также для уменьшения размеров базы данных рекомендуется сохранять ее резервные копии в виде архивов. Сжатие ( компрессия ) резервных копий настраивается в одноименном пункте на вкладке « Экспорт » в разделе « Вывод »:

Сжатие баз данных в MySQL

Еще одним способом уменьшения размера БД MySQL является следующий набор действий:

  • Создание дампа ( копии ) через командную строку с использованием команды mysqldump ;
  • Удаление всех баз данных;
  • Остановка всех службы MySQL ;
  • Последующее восстановление удаленных баз данных из дампа:

Сжатие баз данных в MySQL - 2

Такой подход применим лишь для локальных серверов баз данных. Но никак не для баз, использующихся в интернете. Не каждый ресурс может позволить себе остановку и перезапись всех данных. Уж слишком высока вероятность потери информации и работоспособности всего сайта.

Поэтому для популярных движков разработано большое количество специальных расширений и плагинов. Они позволяют сразу после создания базы данных MySQL настроить ее оптимизацию с помощью периодической очистки всех таблиц и журналов.

Как видите, MySQL является оптимальной СУБД для построения движков на основе php. А PHPMyAdmin – основным средством администрирования баз данных MySQL в интернете.

В этом руководстве объясняется, как создавать базы данных MySQL или MariaDB через командную строку.

Подготовка

Мы предполагаем, что в вашей системе уже установлен сервер MySQL или MariaDB.

Чтобы получить доступ к оболочке MySQL, введите следующую команду и при появлении запроса введите пароль root-пользователя MySQL:

Если вы не установили пароль для своего пользователя root MySQL, вы можете опустить опцию -p .

Если вам нужно изменить пароль root MySQL, следуйте этому руководству по сбросу пароля root MySQL с помощью командной строки.

Создать базу данных MySQL

Создать новую базу данных MySQL так же просто, как запустить одну команду.

Чтобы избежать ошибок, если база данных с тем же именем, которое вы пытаетесь создать, существует, используйте оператор IF NOT EXISTS :

В выходных данных выше Query OK означает, что запрос был успешным, а одно 1 warning сообщает нам, что база данных уже существует, и что новая база данных не была создана.

В Linux имена баз данных и таблиц MySQL чувствительны к регистру.

Просмотреть все базы данных MySQL

Чтобы просмотреть базу данных, которую вы создали, из оболочки MySQL выполните следующую команду:

Приведенная выше команда распечатает список всех баз данных на сервере. Результат должен быть похож на этот:

Выберите базу данных MySQL

При создании базы данных новая база данных не выбирается для использования.

Чтобы выбрать базу данных перед началом сеанса MySQL, используйте следующую инструкцию:

После выбора базы данных все последующие операции, такие как создание таблиц, выполняются с выбранной базой данных.

Каждый раз, когда вы хотите работать с базой данных, вы должны выбирать ее с помощью оператора USE .

Вы также можете выбрать базу данных при подключении к серверу MySQL, добавив имя базы данных в конце команды:

Создайте базу данных MySQL с помощью mysqladmin

Вы также можете использовать утилиту mysqladmin для создания новой базы данных MySQL из терминала Linux.

Например, чтобы создать базу данных с именем database_name , вы должны использовать следующую команду:

Выводы

Мы показали вам, как создавать и выбирать базы данных MySQL с помощью оболочки MySQL и команды mysqladmin .

Помимо создания базы данных можно создавать таблицы и наполнять их, для этого есть два оператора: CREATE TABLE и INSERT. Для создания таблицы MySQL – CREATE TABLE. Для наполнения таблицы используется оператор INSERT. На самом деле, на этом можно было бы и закончить описание создания базы данных MySQL, поскольку на официальном сайте есть подробная техническая документация по созданию таблиц и баз данных сервера MySQL, но есть несколько моментов, которые необходимо объяснить более подробно. О создании таблицы базы данных MySQL мы поговорим отдельно в одной из следующих публикаций.

Как хранится база данных MySQL

Начнем мы не с создания базы данных MySQL, а с привилегий пользователей MySQL сервера. Стоит помнить, что создавать базы данных могут только те пользователи, которые имеют на это права, пользователь, не имеющий прав на создание базы данных, сделать этого не сможет.

К созданию базы данных MySQL переходить еще рано, давайте разберемся с тем, как хранится база данных MySQL сервера на жестком диске вашего компьютера, так будет проще понять принцип именования баз данных. Обратите внимание: у сервера MySQL есть несколько движков, точное количество сейчас я затрудняюсь назвать, для этого нужно смотреть техническую документацию. В любом случае, сами базы данных MySQL сервера хранятся одинакова вне зависимости от типа движка. Движок определяет способ хранения таблиц MySQL сервера.

Откройте консоль вашей операционной системы и запустите сервер MySQL: введите имя и пароль пользователя, который имеет права на создание базы данных MySQL. После чего введите команду:

Введя данный SQL запрос, вы сможете увидеть все созданные базы данных. Каталог, в котором хранятся базы данных MySQL сервера, вы определяли при установки и настройки MySQL сервера, в моем случае путь к каталогу выглядит следующим образом:

В этом каталоге находятся папки, имена которых полностью совпадают с именами баз данных MySQL, которые были отображены в консоли. Вывод: чтобы создать базу данных MySQL достаточно создать папку в каталоге data. Поэтому имена баз данных MySQL могут иметь ограничения. Максимальная длина имени базы данных MySQL не может превышать 64 символов. Для именования базы данных MySQL можно использовать все символы, разрешенные в операционной системе. MySQL сервер не разрешает использовать в именах баз данных следующие символы: слэш(/), точка, ASCII (0) и ASCII (255).

Если создать папку в каталоге data, то база данных MySQL автоматически будет создана, попробуйте создать папку в этом каталоге, а затем выполнить запрос SHOW DATABASES. Рассматривать содержимое папок (баз данных MySQL) сейчас не имеет смысла, поскольку каждый движок MySQL будет хранить таблицы по-своему.

Создание базы данных MySQL

Перейдем теперь к созданию базы данных MySQL. Создать базу данных MySQL позволяет запрос CREATE DATABASE, вот его полный синтаксис:

Давайте попробуем создать базу данных MySQL с именем test1. Я вам не рекомендую копировать код, лучше набирайте его сами, так все команды запомнятся быстрее. Итак, создаем базу данных с именем test1:

Все, база данных с именем test1 создана, повторное создание базы данных с таким же именем приведет к ошибке: ERROR 1007 (HY000) Can’t create database ‘test1’; database exists. По-русски: не могу создать базу данных с именем ‘test1’; база данных уже существует. Чтобы таких ошибок не возникало, создавайте базы данных MySQL с добавлением конструкции [IF NOT EXISTS] (если не существует), в этом случае ошибки не будет, но будет предупреждение:

При создании базы данных MySQL можно указать ее спецификацию: кодировку для всех таблиц базы данных, порядок сортировки и сравнения. Обратите внимание: те же самые данные можно указывать и для каждой таблицы MySQL, если этого не сделать, таблица будет обладать теми же характеристиками, что и вся база данных.

Создадим базу данных MySQL с именем test2, кодировкой utf8 и сравнением utf8_general_ci:

На заметку. Если вы создаете сайт с использованием CMS (установка Drupal, установка Joomla, установка WordPress), то при ее установки потребуется вручную создать базу данных, конечно, база данных будет заполнена автоматически установочным скриптом, но ее нужно уметь создать. Здесь вы сможете ознакомиться с архитектурой базы данных WordPress сайта.

Конструкция CHARACTE SET определяет кодировку созданной базы данных MySQL (в какой кодировки данные будут храниться). COLLATE определяет порядок сравнения данных в базе данных (с учетом регистра символов или нет и прочее). Думаю, с вопросом создания базы данных MySQL мы разобрались, давайте разберемся с кодировкой базы данных, этот вопрос актуален и для каждой таблицы в отдельности.

Я уже говорил, что кодировку для таблицы можно задавать точно так же, как и для всей базы данных, если кодировка не задана явно, то она будет точно такой же, как и кодировка всей базы данных MySQL. Если вы указали кодировку базы данных, но не задали порядок сравнения, то он будет использован по умолчанию. Если задан порядок сравнения, то он определяет кодировку все сущности: либо таблицы, либо базы данных. Обратите внимание: порядок сортировки (COLLATE), должен быть допустимым для текущей кодировки (CHARACTER SET).

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

В данных примерах используется командная оболочка mysql и phpMyAdmin.

Если работа ведется на продуктивном сервере баз данных, рекомендуется сделать резервные копии.

Подключение к СУБД

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

а) В Linux вводим команду:

* где root — пользователь, под которым мы будем подключаться к оболочке; ключ -p потребует ввода пароля.

б) В Windows запускаем командную строку — в меню пуск или найдя ее в поиске. Переходим в каталог, с установленной СУБД и запускаем одноименную команду mysql, например:

cd "%ProgramFiles%\MySQL\MySQL Server 5.5\bin\"

* в данном примере предполагается, что у нас установлена MySQL версии 5.5.

* здесь, как и в Linux, идет подключение к mysql/mariadb под учетной записью root с запросом пароля.

Создание новой базы

Для создания базы используется SQL-запрос CREATE DATABASE. Рассмотрим подробнее его использование.

Командная строка

Используйте данный шаблон команды:

> CREATE DATABASE newdb DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

* вышеописанная команда создаст базу данных с названием newdb и кодировкой UTF-8 (самая распространенная и универсальная).

Проверить, что база появилась можно командой:

* данная команда выводит в консоль список баз, созданных в СУБД.

Подключиться к базе можно командой:

phpMyAdmin

В phpMyAdmin переходим в раздел Базы данных - вводим название новой базы - выбираем кодировку и нажимаем Создать:

Создаем базу данных в phpMyAdmin

Настройка прав доступа

Чтобы к созданной базе можно было подключиться, добавим пользователя:

* где newdb.* — наша база и все ее таблицы; dbuser@localhost — имя учетной записи, которая будет подключаться с локального сервера; password — придуманный нами пароль.
** В данном примере, учетной записи будут предоставлены полные права (ALL PRIVILEGES). Подробнее о правах в MySQL читайте статью Как создать пользователя MySQL и дать ему права.

Посмотреть список пользователей, которые имеют доступ к базе можно командой:

* в данном примере мы выведем учетные записи, которым был дан прямой доступ к созданной нами базе. В данном списке не будут отражены пользователи с глобальными правами (например, root).

Поменять пароль пользователю можно одной из команд (в зависимости от версии СУБД):

* все 3 команды меняют пароль для пользователя dbuser@localhost на новый — new_password.

При необходимости, удалить пользователя можно командами:

* первая команда отнимает все привилегии, выданные пользователю. Вторая удаляет самого пользователя.

Читайте также: