Создание пользователей mysql/mariadb и предоставление прав доступа

Содержание:

MySQL

Самый именитый представитель нашего обзора программ для разработки базы данных. Бесплатная база данных MySQL существует с 1995 года и теперь принадлежит компании Oracle. СУБД имеет открытый исходный код. Также существует несколько платных версий, которые предлагают дополнительные функции, такие как гео-репликация кластера и автоматическое масштабирование.

Поскольку MySQL является отраслевым стандартом, она совместима практически со всеми операционными системами и написана на языках C и C ++. Это решение является отличным вариантом для международных пользователей. Сервер СУБД может выводить клиентам сообщения об ошибках на нескольких языках.

Достоинства

  • Проверка на стороне сервера;
  • Может использоваться как локальная база данных;
  • Гибкая система привилегий и паролей;
  • Безопасное шифрование всего трафика паролей;
  • Библиотека, которая может быть встроена в автономные приложения;
  • Предоставляет сервер в качестве отдельной программы для сетевого окружения клиент/сервер.

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

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

Использование среды SQL Server Management StudioUsing SQL Server Management Studio

Создание базы данныхTo create a database

  1. В обозревателе объектов подключитесь к экземпляру компонента Компонент 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.

  2. Щелкните правой кнопкой мыши элемент Базы данных, а затем выберите пункт Создать базу данных.Right-click Databases, and then click New Database.

  3. В поле Новая база данных введите имя базы данных.In New Database, enter a database name.

  4. Чтобы создать базу данных, приняв все значения по умолчанию, нажмите кнопку ОК; иначе продолжайте выполнение следующих дополнительных шагов.To create the database by accepting all default values, click OK; otherwise, continue with the following optional steps.

  5. Чтобы изменить имя владельца, нажмите ( … ) и выберите другого владельца.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.

  6. Чтобы изменить значения первичных данных по умолчанию и файлов журнала транзакций, щелкните соответствующую ячейку в сетке Файлы базы данных и введите новое значение.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.

  7. Чтобы изменить параметры сортировки базы данных, выберите страницу Параметры и выберите из списка желаемые параметры сортировки.To change the collation of the database, select the Options page, and then select a collation from the list.

  8. Чтобы изменить модель восстановления, выберите страницу Параметры и модель восстановления из списка.To change the recovery model, select the Options page and select a recovery model from the list.

  9. Чтобы изменить параметры базы данных, выберите страницу Параметры и измените параметры базы данных.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).

  10. Чтобы добавить новую файловую группу, перейдите на страницу Группы файлов .To add a new filegroup, click the Filegroups page. Нажмите Добавить и введите значения для файловой группы.Click Add and then enter the values for the filegroup.

  11. Чтобы добавить расширенное свойство в базу данных, выберите страницу Расширенные свойства .To add an extended property to the database, select the Extended Properties page.

    1. В столбце Имя введите имя расширенного свойства.In the Name column, enter a name for the extended property.

    2. В столбце Значение введите текст расширенного свойства.In the Value column, enter the extended property text. Например, введите одно или несколько предложений, которые описывают базу данных.For example, enter one or more statements that describe the database.

  12. Чтобы создать базу данных, нажмите кнопку ОК.To create the database, click OK.

Подключение базы данных к серверу mysql

Давайте разберемся, как подключить базу данных mysql?

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

В СУБД предусмотрена система, разграничивающая доступ каждому пользователю. Идентификация осуществляется с помощью логина (имени) и пароля.

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

  1. Указать свой логин (имя пользователя);
  2. Ввести пароль;
  3. Определить 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:

  1. Необходимо кликнуть на размещенном компоненте TADOConnection, в результате появляется форма для настройки подключения;
  2. Далее нужно выбрать «Use Connection String» и нажать кнопку «Build»:
  3. Затем выбирается поставщик «Microsoft OLE DB Provider for ODBC Drivers»:
  4. В новом окне выбирается пункт «Использовать строку подключения» и нажимается кнопка:
  5. Далее необходимо выбрать вкладку «Источник данных компьютера»:
  6. В появившемся окне, выбирается пользовательский или системный тип источника данных:
  7. Далее появится окно, позволяющее выбрать нужный драйвер, например, «MySQL OBDC 5.1 Driver»:
  8. В следующем окне для окончания настройки необходимо нажать кнопку «Готово».

Таким образом, созданная база 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 через запро­сы в терминале 

Коротко главное

  1. MySQL — систе­ма управ­ле­ния реля­ци­он­ны­ми база­ми дан­ных. Реля­ци­он­ны­ми — то есть таки­ми, меж­ду кото­ры­ми есть одно­знач­ные про­пи­сан­ные свя­зи. Мож­но пред­ста­вить, что это систе­ма управ­ле­ния таб­лич­ны­ми база­ми данных. 
  2. Таб­ли­цы могут быть свя­за­ны меж­ду собой, что­бы мож­но было про­ще най­ти нуж­ную информацию.
  3. Для рабо­ты с реля­ци­он­ны­ми БД исполь­зу­ют спе­ци­аль­ный язык — SQL.
  4. Каж­дая коман­да в SQL — это запрос к базе, что­бы она что-то нашла, изме­ни­ла, доба­ви­ла или уда­ли­ла у себя.
  5. 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

  1. В обозревателе объектов щелкните правой кнопкой мыши таблицу, в которую необходимо добавить ограничение уникальности, и выберите Конструктор.In Object Explorer, right-click the table to which you want to add a unique constraint, and click Design.
  2. В Конструкторе таблиц щелкните селектор строк для столбца базы данных, который необходимо определить в качестве первичного ключа.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.
  3. Щелкните правой кнопкой мыши средство выбора строк столбца и выберите команду Задать первичный ключ.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 — минимальное количество специальных символов (например, # или !).

Решение:

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

> 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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector