Создание пользователей mysql/mariadb и предоставление прав доступа
Содержание:
- MySQL
- Использование среды SQL Server Management StudioUsing SQL Server Management Studio
- Подключение базы данных к серверу mysql
- MS Access: где скачать дополнительные шаблоны?
- phpMyAdmin
- А покажите сами запросы
- Коротко главное
- Что дальше
- Зачем создавать базу данных MySQL
- Нормализация
- Чтение записей
- Какими преимуществами обладает MySQL?
- Принцип работы MySQL-серверов
- «Ваша устаревшая база данных перерастает сама себя». Опыт chess.com
- Автоматическое приращение AUTO_INCREMENT
- Использование среды SQL Server Management StudioUsing SQL Server Management Studio
- Как информация хранится в реляционных БД?
- Зачем нужна база данных?
- Возможные ошибки
MySQL
Самый именитый представитель нашего обзора программ для разработки базы данных. Бесплатная база данных MySQL существует с 1995 года и теперь принадлежит компании Oracle. СУБД имеет открытый исходный код. Также существует несколько платных версий, которые предлагают дополнительные функции, такие как гео-репликация кластера и автоматическое масштабирование.
Поскольку MySQL является отраслевым стандартом, она совместима практически со всеми операционными системами и написана на языках C и C ++. Это решение является отличным вариантом для международных пользователей. Сервер СУБД может выводить клиентам сообщения об ошибках на нескольких языках.
Достоинства
- Проверка на стороне сервера;
- Может использоваться как локальная база данных;
- Гибкая система привилегий и паролей;
- Безопасное шифрование всего трафика паролей;
- Библиотека, которая может быть встроена в автономные приложения;
- Предоставляет сервер в качестве отдельной программы для сетевого окружения клиент/сервер.
Недостатки практической разработки и администрирования баз данных MySQL Приобретена компанией Oracle:
- пользователи полагают, что MySQL больше не подпадает под категорию бесплатного и открытого программного обеспечения;
- больше не поддерживается сообществом;
- пользователи не могут исправлять ошибки и патчи;
- проигрывает другим решениям из-за медленных обновлений.
Использование среды SQL Server Management StudioUsing SQL Server Management Studio
Создание базы данныхTo create a database
-
В обозревателе объектов подключитесь к экземпляру компонента Компонент SQL Server Database EngineSQL Server Database Engine и разверните его.In Object Explorer, connect to an instance of the Компонент SQL Server Database EngineSQL Server Database Engine and then expand that instance.
-
Щелкните правой кнопкой мыши элемент Базы данных, а затем выберите пункт Создать базу данных.Right-click Databases, and then click New Database.
-
В поле Новая база данных введите имя базы данных.In New Database, enter a database name.
-
Чтобы создать базу данных, приняв все значения по умолчанию, нажмите кнопку ОК; иначе продолжайте выполнение следующих дополнительных шагов.To create the database by accepting all default values, click OK; otherwise, continue with the following optional steps.
-
Чтобы изменить имя владельца, нажмите ( … ) и выберите другого владельца.To change the owner name, click (…) to select another owner.
Примечание
Параметр Использовать полнотекстовое индексирование всегда установлен и недоступен (т. к. начиная с SQL Server 2008SQL Server 2008все пользовательские базы данных поддерживают полнотекстовый поиск).The Use full-text indexing option is always checked and dimmed because, beginning in SQL Server 2008SQL Server 2008, all user databases are full-text enabled.
-
Чтобы изменить значения первичных данных по умолчанию и файлов журнала транзакций, щелкните соответствующую ячейку в сетке Файлы базы данных и введите новое значение.To change the default values of the primary data and transaction log files, in the Database files grid, click the appropriate cell and enter the new value. Дополнительные сведения см. в статье AДобавление файлов данных или журналов в базу данных.For more information, see Add Data or Log Files to a Database.
-
Чтобы изменить параметры сортировки базы данных, выберите страницу Параметры и выберите из списка желаемые параметры сортировки.To change the collation of the database, select the Options page, and then select a collation from the list.
-
Чтобы изменить модель восстановления, выберите страницу Параметры и модель восстановления из списка.To change the recovery model, select the Options page and select a recovery model from the list.
-
Чтобы изменить параметры базы данных, выберите страницу Параметры и измените параметры базы данных.To change database options, select the Options page, and then modify the database options. Описание каждого параметра см. в статье Параметры ALTER DATABASE SET (Transact-SQL).For a description of each option, see ALTER DATABASE SET Options (Transact-SQL).
-
Чтобы добавить новую файловую группу, перейдите на страницу Группы файлов .To add a new filegroup, click the Filegroups page. Нажмите Добавить и введите значения для файловой группы.Click Add and then enter the values for the filegroup.
-
Чтобы добавить расширенное свойство в базу данных, выберите страницу Расширенные свойства .To add an extended property to the database, select the Extended Properties page.
-
В столбце Имя введите имя расширенного свойства.In the Name column, enter a name for the extended property.
-
В столбце Значение введите текст расширенного свойства.In the Value column, enter the extended property text. Например, введите одно или несколько предложений, которые описывают базу данных.For example, enter one or more statements that describe the database.
-
-
Чтобы создать базу данных, нажмите кнопку ОК.To create the database, click OK.
Подключение базы данных к серверу mysql
Давайте разберемся, как подключить базу данных mysql?
MySQL является многопользовательским программным продуктом, с которым могут работать одновременно несколько пользователей.
В СУБД предусмотрена система, разграничивающая доступ каждому пользователю. Идентификация осуществляется с помощью логина (имени) и пароля.
Для того чтобы подключить базу данных mysql к серверу необходимо:
- Указать свой логин (имя пользователя);
- Ввести пароль;
- Определить hostname (имя хоста) и порт.
Последние параметры при необходимости можно уточнить у администратора.
Как осуществить подключение mysql к php?
Программный пакет php, позволяющий создавать сценарии (скрипты), находится на сервере.
Для осуществления подключения mysql к php нужно знать четыре атрибута:
- имя пользователя базы данных;
- имя самой базы данных;
- имя хоста;
- пользовательский пароль.
1. Необходимо создать файл будущего скрипта в html редакторе:
<?php /*Настройки подключения*/ $db_host = "localhost"; //Имя хоста $db_user = "root"; //Пользователь БД $db_pass = ""; //Пароль для пользователя БД $db_name = "test"; //Имя базы данных $connect_db = mysql_connect($db_host,$db_user,$db_pass) or die("Ошибка подключения к серверу:".mysql_error()); mysql_select_db("test",$connect_db) or die("Ошибка подключения к базе данных:".mysql_error()); ?>
Благодаря функции «mysql_connect» обеспечивается соединение с сервером, а с помощью функции «mysql_select_db» осуществляется выбор необходимой базы данных.
При несрабатывании функций с помощью оператора «mysql_error()» на дисплей будет выведена причина ошибки.
2. Далее нужно сохранить в корневой директории созданный документ с именем «mysql.php.».
Этапы подключения delphi к mysql
Для подключения оболочки разработки приложений Delphi к базе данных необходимо, чтобы были установлены и настроены следующие программы:
- сервер MySQL;
- база данных с необходимыми таблицами;
- Mysql Connector ODBC.
Подключение delphi к mysql начинается с создания нового Delphi проекта и размещения на форме компонента TADOConnection:
- Необходимо кликнуть на размещенном компоненте TADOConnection, в результате появляется форма для настройки подключения;
- Далее нужно выбрать «Use Connection String» и нажать кнопку «Build»:
- Затем выбирается поставщик «Microsoft OLE DB Provider for ODBC Drivers»:
- В новом окне выбирается пункт «Использовать строку подключения» и нажимается кнопка:
- Далее необходимо выбрать вкладку «Источник данных компьютера»:
- В появившемся окне, выбирается пользовательский или системный тип источника данных:
- Далее появится окно, позволяющее выбрать нужный драйвер, например, «MySQL OBDC 5.1 Driver»:
- В следующем окне для окончания настройки необходимо нажать кнопку «Готово».
Таким образом, созданная база mysql предоставляет множество возможностей для осуществления удобной и продуктивной работы с большими массивами данных.
Удачи Вам!
MS Access: где скачать дополнительные шаблоны?
Если вы не нашли подходящий шаблон среди предустановленных, то можете попробовать скачать шаблоны для Access из Интернета. К сожалению, количество загрузочных порталов, предоставляющих такие шаблоны, невелико, особенно в Рунете.
-
Для тех, кто владеет языками, существует сайт, Microsoft Templates. Он предлагает хорошую коллекцию бесплатных англоязычных шаблонов для любых продуктов Office, включая Access. Сайт содержит качественную подборку баз данных Access, разбитых по категориям — бизнес, нон-профит, для использования в образовании и так далее. Помимо этого, на сайте доступны шаблоны для Word, Excel, PowerPoint и других программ из офисного пакета MS.
- Существует огромная англоязычная коллекция шаблонов для Microsoft Access — Access Templates. Сайт предлагает солидное количество шаблонов баз данных Access для самых различных отраслей, от образования и медицины до бухучета и программирования. Шаблоны сорируются по версиям Access, дате, популярности. Однако, для полноценного скачивания требуется платная регистрация, которая стоит $88 и достаточно неудобна для России, так как работает через PayPal. В шаблонах, скачанных бесплатно, будут заблокированы таблицы (впрочем, разблокировка — вопрос умения).
- На русском языке существует неплохой проект Access Help. Несмотря на коммерческую направленность проекта, его создатели свободно выкладывают примеры созданных ими баз в Интернет, чтобы их мог использовать любой желающий. Для скачивания доступны готовые базы данных Access для самых разных организаций, особенно для бизнеса.
- Как создать календарь в MS Access
- Как обновить записи в формах MS Access
- Как задать первичный ключ базы данных Access
Фото: авторские, pixabay.com
phpMyAdmin
Самый простой и привычный для меня в MySQL подключение к базе данных это phpMyAdmin. Попасть в админку управления базой можно через сервисный кабинет на сайте хостера.
Современная админка хсотера
На примере ukraine.com.ua я покажу как это делается.
Сначала нужно зайти в свой хостинг-аккаунт и найти пункт с названием MySQL:
Далее, кликните по «База данных». Возле нужной БД кликните по иконке с шестерёнкой и нажмите «Войти»:
После входа, в перечне слева, кликните по нужной базе данных:
Теперь вы можете просматривать и вносить изменения в структуру БД.
Старая админка хостера
Хочу показать пример входа в админке хостера, который использует ISP manager:
Как правило, вход в такую админку осуществляется по сервисному адресу, например, h16.hvosting.ua. В данном примере hvosting.ua — это хостинг-провайдер. А сервисный адрес входа выдаёт сам хостер, после оплаты одного из тарифных планов.
После входа в админку ISP manage кликните по «PhpMyAdmin»:
Далее, откроется страница для осуществления MySQL подключении к базе данных. Здесь необходимо ввести данные, которые вы используете в конфигурационном файле вашего сайта, те логин и пароль, которые вы задавали при создании БД. После ввода и клика по «OK» вы попадаете в туже админку phpMyAdmin.
А покажите сами запросы
А пожалуйста.
Создадим базу данных THECODE_MEDIA:
CREATE DATABASE THECODE_MEDIA;
Скажем, что будем дальше работать именно с этой базой:
USE THECODE_MEDIA;
Создадим таблицу с названиями статей, авторами и количеством прочтений за месяц:
CREATE TABLE STATS (name VARCHAR(200), author VARCHAR(20), readers INT);
Загрузим в таблицу уже готовые данные из файла:
LOAD DATA LOCAL INFILE ‘thecode/readers_stat.txt’ INTO TABLE STATS;
А теперь выведем их на экран:
SELECT * FROM STATS;
Команд в SQL настолько много, что нам понадобится отдельная статья для практики. Сделаем для этого отдельный проект, на котором покажем, как MySQL работает с запросами и таблицами.
Работа с MySQL через запросы в терминале
Коротко главное
- MySQL — система управления реляционными базами данных. Реляционными — то есть такими, между которыми есть однозначные прописанные связи. Можно представить, что это система управления табличными базами данных.
- Таблицы могут быть связаны между собой, чтобы можно было проще найти нужную информацию.
- Для работы с реляционными БД используют специальный язык — SQL.
- Каждая команда в SQL — это запрос к базе, чтобы она что-то нашла, изменила, добавила или удалила у себя.
- MySQL используют уже 25 лет, поэтому это проверенная и надёжная база данных. Кто любит MySQL, тому легко ориентироваться в технологиях современного веба.
Что дальше
На очереди — нереляционные базы и NoSQL. Там вообще всё не так, как здесь, поэтому разбирать будем отдельно.
Текст и иллюстрации:Миша Полянин
Редактор:Максим Ильяхов
Корректор:Ира Михеева
Иллюстратор:Даня Берковский
Вёрстка:Маша Дронова
Зачем создавать базу данных MySQL
Создание базы данных MySQL необходимо для хранения в ней данных интернет сайта. Причина создание базы данных сводится к двум основным направлениям:
- Необходимость создать сайт на готовой платформе (CMS). Вся поступающая информация интернет ресурса: учётные записи пользователей, содержание статей и другие данные сохраняются в таблицах базы данных. Более подробно читайте статью о том, что такое интернет движок и какие виды движков бывают.
- Создание персонального сайта с возможностью также сохранять данные.
Следует отметить, что первый вариант предоставляет готовое решение создание сайта, а второй требует полной разработки сайта с самого начала. Это направление требует знаний в области программирования и взаимодействия с базой данных, а в первом варианте необходимо лишь наладить подключение к ней.
Нормализация
Представление о взаимоотношениях данных и наиболее эффективном способе их организации называется нормализацией. Нормализация заключается в разделении данных на основе логических взаимоотношений с целью минимизировать дублирование данных. Повторяющиеся данные понапрасну расходуют дисковое пространство сервера и затрудняют их обслуживание. При внесении изменений в повторяющиеся данные есть риск пропустить какие-то из них, что может привести к возникновению несогласованностей в базе данных.
С другой стороны, лучшее – враг хорошего: когда данные хранятся по частям в отдельных таблицах, это может потребовать слишком больших накладных расходов на их извлечение, да и запросы могут получаться чересчур замысловатыми. Главная цель – найти золотую середину.
Размещение всех данных в одной таблице может показаться заманчивым, однако такой способ приводит к напрасному расходованию пространства в базе данных и делает утомительной операцию обновления данных. С каждой новой покупкой все сведения о покупателе записываются повторно. Для каждой книги можно указать не больше двух авторов. Кроме того, если покупатель переедет и поменяет адрес, это потребует внести изменения в каждую запись, связанную с этим покупателем.
Чтение записей
Другая частая операция при работе с базами данных в PHP — это получение записей из таблиц (запросы типа SELECT).
Составим SQL-запрос, который будет использовать выражение. Затем выполним этот запрос с помощью функции , чтобы получить данные из таблицы.
В этом примере показано, как вывести все существующие города из таблицы cities:
В примере выше результат выполнения функции сохранён в переменной .
Важно понимать, что в этой переменной находятся не данные из таблицы, а специальный тип данных — так называемая ссылка на результаты запроса. Чтобы получить действительные данные, то есть записи из таблицы, следует использовать другую функцию — — и передать ей единственным параметром эту самую ссылку.
Теперь каждый вызов функции будет возвращать следующую запись из всего результирующего набора записей в виде ассоциативного массива
Чтобы получить действительные данные, то есть записи из таблицы, следует использовать другую функцию — — и передать ей единственным параметром эту самую ссылку.
Теперь каждый вызов функции будет возвращать следующую запись из всего результирующего набора записей в виде ассоциативного массива.
Цикл здесь используется для «прохода» по всем записям из полученного набора записей.
Значение поля каждой записи можно узнать просто обратившись по ключу этого ассоциативного массива.
Как получить сразу все записи в виде двумерного массива
Иногда бывает удобно после запроса на чтение не вызывать в цикле для извлечения очередной записи по порядку, а получить их сразу все одним вызовом. PHP так тоже умеет. Функция вернёт двумерный массив со всеми записями из результата последнего запроса.
Перепишем пример с показом существующих городов с её использованием:
Как узнать количество записей
Часто бывает необходимо узнать, сколько всего записей вернёт выполненный SQL запрос.
Это может помочь при организации постраничной навигации, или просто в качестве информации.
Узнать число записей поможет функция , которой следует передать ссылку на результат запроса.
Какими преимуществами обладает MySQL?
Одними из главных плюсов MySQL, благодаря которым программа нравится многим веб-мастерам, является высокая скорость обработки информации и функциональность СУБД. Как мы уже упоминали выше, данная система представляет собой программное обеспечение с открытым кодом, и она доступна любому пользователю абсолютно бесплатно, что тоже склоняет чашу весов в сторону MySQL. Большинство современных хостингов используют именно MySQL.
Веб-мастер получает возможность совершенствовать код и вносить в него собственные изменения, что делает программу гибкой. MySQL является лишь одним из многих программных обеспечений, работающих с SQL.
SQL – язык запросов, предназначенный для организации управления реляционными БД (со связанными между собой данными). Он многофункционален и с его помощью можно корректировать, создавать и убирать данные из таблиц, запрашивать из них информацию, создавать сами таблицы и т.д.
На заметку! В интернет-пространстве MySQL еще известна как «мускул». Такое название ей придумали веб-мастера. К примеру, когда говорят фразу «CMS на мускуле», это значит, что система управления контентом сайта (движок) применяет СУБД MySQL.
Принцип работы MySQL-серверов
Он такой же, как в любых клиент-серверных моделях. Одно устройство делает запрос, а второе отвечает. Запрашивающих может быть больше одного, все зависит от сервера, сети и поставленных задач.
Технически немного иные, но по своей сути идентичные процессы происходят в среде MySQL:
- Система создает базу данных для хранения информации (ее сортировки, идентификации и т.п.).
- Клиенты (другие компьютеры в сети) подают запросы к базе с помощью специфичных для SQL команд.
- Серверное приложение обрабатывает запрос и выдает ответ клиенту (выдает запрашиваемые данные).
Для взаимодействия с MySQL-сервером используются соответствующие утилиты. Некоторые работают только в командной строке. Некоторые награждены графическим интерфейсом. Популярные решения – WorkBench, SequelPro, SQL Studio, TablePlus. Правда, большинство вебмастеров предпочитает phpMyAdmin, так как та входит в LAMP и работает в браузере.
Как создать базу данных на хостинге?
У хостинг-провайдеров встречаются панели управления со встроенной функцией создания баз данных. В Timeweb такая есть. Чтобы создать на хостинге базу данных, надо открыть раздел «Базы данных MySQL» и кликнуть по кнопке «Создание новой базы данных». Система попросит указать параметры, имя пользователя и пароль администратора для авторизации.
Что касается создания БД на VDS, то можно воспользоваться панелью управления сервером. Например, ISPmanager.
В ISPmanager базы создаются так:
- Открываем панель управления.
- Переходим в пункт меню «Инструменты».
- Кликаем по подпункту «Базы данных».
- Нажимаем на кнопку «Создать».
- Указываем параметры будущей базы (логин, пароль и т.п.).
- Сохраняем данные, кликнув по кнопке ОК.
«Ваша устаревшая база данных перерастает сама себя». Опыт chess.com
Перевод
Прим. перев.: в этой статье сербский «инженер по масштабируемости» нагруженного онлайн-проекта в подробностях рассказывает о своем опыте оптимизации большой БД на базе MySQL. Проведена она была для того, чтобы выдержать резкий рост трафика на сайт, случившийся из-за пандемии.
База данных становится слишком большой или старой? Ее тяжело обслуживать? Что ж, надеюсь, я смогу немного помочь. Текст, который вы собираетесь прочитать, содержит реальный опыт масштабирования монолитной базы данных, лежащей в основе одного из сайтов Топ-250 (согласно alexa.com). На момент написания этой статьи chess.com занимал 215 место в мире по популярности. Ежедневно к нам заглядывали более 4 млн уникальных пользователей, а наши MySQL-базы обрабатывали в общей сложности более 7 млрд запросов. Год назад сайт ежедневно посещали 1 млн уникальных пользователей; в марте прошлого года их число увеличилось до 1,3 млн; сегодня более 4 млн человек заходят на chess.com ежедневно, а число сыгранных партий превышает 8 млн. Я, конечно, знаю, что это не сопоставимо с самыми крупными игроками на рынке, однако наш опыт все же может помочь в такой сложной задаче, как «исправление» монолитной базы данных и ее вывод на новый уровень производительности.
Автоматическое приращение AUTO_INCREMENT
AUTO_INCREMENT — одно из самых простых, но наиболее полезных определений столбцов в языке SQL. По сути, когда столбец определяется с помощью AUTO_INCREMENT, значение столбца автоматически увеличивается каждый раз, когда в таблицу добавляется новая строка. Это особенно полезно при использовании столбца в качестве первичного ключа. Используя AUTO_INCREMENT, нет необходимости писать операторы SQL для вычисления нового уникального идентификатора для каждой строки. Все это обрабатывается сервером MySQL при добавлении строки.
При использовании AUTO_INCREMENT необходимо соблюдать два правила. Во-первых, статус AUTO_INCREMENT может быть присвоен только одному столбцу в таблице. Во-вторых, столбец AUTO_INCREMENT должен быть проиндексирован (например, объявлен как первичный ключ).
Можно переопределить значение AUTO_INCREMENT столбца, просто указав значение при выполнении оператора INSERT. Пока указанное значение является уникальным, предоставленное значение будет использоваться в новой строке, а последующие приращения начнутся с вновь вставленного значения.
MySQL может быть запрошен для получения самого последнего значения приращения, используя функцию last_insert_id() следующим образом:
SELECT last_insert_value();
Использование среды SQL Server Management StudioUsing SQL Server Management Studio
Создание первичного ключаTo create a primary key
- В обозревателе объектов щелкните правой кнопкой мыши таблицу, в которую необходимо добавить ограничение уникальности, и выберите Конструктор.In Object Explorer, right-click the table to which you want to add a unique constraint, and click Design.
- В Конструкторе таблиц щелкните селектор строк для столбца базы данных, который необходимо определить в качестве первичного ключа.In Table Designer, click the row selector for the database column you want to define as the primary key. Чтобы выделить несколько столбцов, нажмите и удерживайте клавишу CTRL и щелкните селекторы строк для остальных столбцов.If you want to select multiple columns, hold down the CTRL key while you click the row selectors for the other columns.
- Щелкните правой кнопкой мыши средство выбора строк столбца и выберите команду Задать первичный ключ.Right-click the row selector for the column and select Set Primary Key.
Внимание!
Чтобы переопределить первичный ключ, необходимо удалить все связи с существующим первичным ключом и только после этого создавать новый первичный ключ.If you want to redefine the primary key, any relationships to the existing primary key must be deleted before the new primary key can be created. Появится сообщение, предупреждающее об автоматическом удалении в ходе процесса всех существующих связей.A message will warn you that existing relationships will be automatically deleted as part of this process.
Ключевой столбец-источник идентифицируется символом первичного ключа в соответствующем селекторе строк.A primary key column is identified by a primary key symbol in its row selector.
Если первичный ключ состоит более чем из одного столбца, то в одном столбце могут встречаться дублирующиеся значения, но все сочетания значений изо всех столбцов первичного ключа должны быть уникальными.If a primary key consists of more than one column, duplicate values are allowed in one column, but each combination of values from all the columns in the primary key must be unique.
При определении составного ключа порядок столбцов в первичном ключе совпадает с порядком столбцов, показанным в таблице.If you define a compound key, the order of columns in the primary key matches the order of columns as shown in the table. Однако после создания первичного ключа порядок столбцов можно изменить.However, you can change the order of columns after the primary key is created. Дополнительные сведения см. в разделе Изменение первичных ключей.For more information, see Modify Primary Keys.
Как информация хранится в реляционных БД?
Чтобы понять, как реляционные БД хранят различные данные, лучше всего привести в пример обычную таблицу со столбцами и строками, куда внесены имена, а также соответствующие им телефонные номера, адреса и прочая информация. Такой вид имеет и реляционная БД. В каждом столбце указано определенное название, и все содержащиеся в них значения являются однотипными переменными. Столбцы строго упорядочиваются, в отличие от строк, в которых могут содержаться значения из разных таблиц. Сделав запрос к базе данных, вам будет выдан результат в таблице.
Все значения в БД делятся на два типа:
- Уникальные.
- Неуникальные.
К первому типу относятся хостинговые договора, номера банковских карт и т.п. А к неуникальным приписывается информация, которая может повторяться, например, имя, дата рождения, время и пр. Уникальные данные содержатся в списке под названием «уникальный индекс».
Зачем нужна база данных?
Представьте, что вы ведете свой сайт. Если у вас небольшой статический проект, в котором содержится всего несколько html страниц, то применение базы данных(БД) вам вовсе и не нужно. Но это редкие случаи, когда создаваемые web-мастерами проекты остаются практически незаполненными. Как правило, сайты продолжают наполняться контентом, они становятся более загруженными. Такие проекты уже являются динамичными, и без базы данных вести их очень сложно.
Храня гигабайты информации, распределенной по сотням файлов, вам придется тратить уйму времени при выдаче необходимых строк в процессе функционирования сервера. Чтобы избежать этого, нужны БД, занимающиеся группировкой и упорядочиванием информации. Код для базы данных значительно проще, чем код, предназначенный с целью применения файлов. При этом запрос обрабатывается куда быстрее.
В БД все данные представлены таблицей с комментариями, информацией об объектах и т.п. Стоит отметить, что БД постоянно меняется, дополняется новыми данными, исправляется та информация, которая уже есть в ней. И чтобы не возникало трудностей в процессе администрирования, добавления и изменения информации, были придуманы специальные системы управления БД. Об одной из них мы и говорим в данной статье, так как MySQL в своей сфере пользуется наибольшим спросом.
Возможные ошибки
1. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Причина: в новых версиях по умолчанию активированы политики на проверку сложности пароля. Их список можно посмотреть командой:
> SHOW VARIABLES LIKE ‘validate_password%’;
Вывод команды будет, примерно, следующим:
+—————————————+———+
| Variable_name | Value |
+—————————————+———+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+—————————————+———+
* где:
- validate_password_check_user_name — пароль не должен совпадать с именем пользователя.
- validate_password_dictionary_file — использовать специальный файл со словарем запрещенных паролей.
- validate_password_length — минимальная длина пароля.
- validate_password_mixed_case_count — сколько, как минимум, должно быть символов в малой и большой раскладках.
- validate_password_number_count — какое минимальное количество цифр использовать в пароле.
- validate_password_policy — позволяет задать определенный набор правил. Доступны значения LOW (или 0), MEDIUM (1), STRONG (2).
- validate_password_special_char_count — минимальное количество специальных символов (например, # или !).
Решение:
- Привести пароль в соответствие требованиям политик.
- Отключить политику, которая не позволяет использовать желаемый пароль. Например, чтобы отключить требование использовать цифры вводим:
> SET GLOBAL validate_password_number_count = 0;
2. ERROR 1728 (HY000): Cannot load from mysql.tables_priv. The table is probably corrupted
Причина: система считает, что таблица tables_priv в базе mysql неисправна.
Решение: чаще всего, ошибка возникает при переносе баз с одного сервера в другой. Если версии СУБД разные, таблица tables_priv может работать со сбоями. Для исправления необходимо выполнить команду mysql_upgrade — она проверяет все таблицы на совместимость с текущей версией MySQL/MariaDB и вносит исправления. Применение команды:
mysql_upgrade -u root -p