Архив метки: MariaDB

Какой хостинг лучше для WordPress Linux или Windows?

Перед запуском вашего сайта на WordPress вам необходимо выбрать платформу для хостинга сайта. Необходимо определиться с операционной системой (ОС) Linux или Windows. Однако разница между ними не сразу очевидна.

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

В этой публикации объясним, что такое серверная ОС. Мы также поговорим о различиях между хостингом Linux и Windows с точки зрения стабильности, инструментов разработки и простоты использования. Давайте начнем!

Читать

Как исправить — mariadb не запускается после зменения расположения датафайлов?

Если MariaDB не запускается после изменения расположения данных файлов, это может быть вызвано тем, что база данных не может найти файлы данных в новом местоположении. Для того чтобы исправить эту проблему, вам следует выполнить следующие шаги: Читать

Сравнение MySQL vs MariaDB

Оригинальная версия MySQL была разработана фино-шведской компанией MySQL AB, которую основали Джвид Ахмарк, Аллан Ларссон и Майкл Монти. Первая версия MySQL появилась в 1995 году. Изначально она предназначалась для личного пользования, но спустя несколько лет превратилась в базу данных корпоративного уровня. Читать

Как установить и использовать MySQL Workbench в Ubuntu

MySQL — это система управления базами данных (СУБД) с открытым исходным кодом, поддерживаемая корпорацией Oracle. MySQL — это экономичный и мощный инструмент, который помогает управлять большими данными, обеспечивая при этом безопасность. Наша сегодняшняя тема — MySQL workbench, графический инструмент, который работает с серверами и базами данных MySQL. Этот инструмент можно использовать для визуализации модулей для создания, выполнения и оптимизации нескольких запросов.

 

Предпосылки

Перед установкой MySQL workbench убедитесь, что сервер MySQL установлен в вашей системе. В этом руководстве мы будем использовать сервер сообщества. Если в вашей системе уже установлен сервер сообщества MySQL, вы можете пропустить следующий раздел и перейти непосредственно к установке MySQL Workbench.

 

Установка сервера MySQL

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

$ sudo apt update

$ sudo apt update

 

Если ваши пакеты уже обновлены, вторую команду вводить не нужно.

Теперь, чтобы установить сервер MySQL, введите следующую команду.

sudo apt install mysql-server

 

Когда вы закончите установку, давайте настроим сервер сообщества. Перейдите в терминал и введите следующую команду.

sudo mysql

 

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

mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’;

 

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

После завершения этого шага введите следующую команду.

mysql> flush privileges;

 

Теперь вы можете выйти из MySQL, набрав exit.

mysql> exit;

 

После того, как вы выполните эти шаги, перейдите к установке MySQL Workbench.

 

Установка MySQL Workbench

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

systemctl status mysql.service

 

Двигайтесь вперед, если сервер активен , как видно выше; в противном случае вам, возможно, придется снова запустить сервер.

Введите следующую команду, чтобы загрузить и установить рабочую среду MySQL.

sudo apt install mysql-workbench

 

Использование MySQL Workbench

Перейдите в меню «Действия» и в поле поиска введите «MySQL workbench» и запустите его.

MySQL Workbench в Ubuntu

 

Вы увидите следующий экран.

MySQL Workbench в Ubuntu

 

Создать локальное соединение очень просто, и при условии, что у вас установлен сервер сообщества в расположении по умолчанию, эта задача займет всего несколько минут. Когда вы запускаете workbench в первый раз, вы получаете окно с несколькими вариантами. Для каждого локально установленного сервера автоматически создается плитка подключения. Чтобы добавить больше подключений, щелкните значок плюса рядом с основным заголовком MySQL Connections.

MySQL Workbench в Ubuntu

 

Если вы хотите добавить соединение, появится следующее диалоговое окно. Значения по умолчанию для простой локали предварительно вводятся.

MySQL Workbench в Ubuntu

 

Дайте вашему соединению имя в поле Имя соединения. Наиболее важной функцией здесь является имя хоста, которое является IP-адресом хоста сервера. Сервер MySQL использует порт 3306

MySQL Workbench в Ubuntu

 

При новой установке доступен только пользователь root с полным доступом ко всему на сервере. Здесь мы подключимся к корню и нажмем Test Connection.

После того, как вы введете пароль и нажмете Enter, появится следующее сообщение.

MySQL Workbench в Ubuntu

 

Теперь вернитесь на главный экран. Вы увидите еще одну плитку подключения с именем вашего подключения.

MySQL Workbench в Ubuntu

 

При нажатии на эту плитку откроется новое соединение.

MySQL Workbench в Ubuntu

 

В MySQL Workbench вы можете многое сделать. Вы можете создавать схемы и таблицы. Добавьте данные в эти таблицы или просмотрите конкретные данные.

MySQL Workbench в Ubuntu

 

Теперь на приведенном выше снимке экрана раздел с пометкой «1» — это место, где вы вводите свои SQL-запросы. Раздел с пометкой «2» — это боковая панель, где вы управляете своими базами данных и схемами. В разделе с пометкой «3» отображаются выходные данные SQL-запросов, которые вы ввели в разделе с пометкой «1».

 

Подключение к схеме

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

MySQL Workbench в Ubuntu

 

Шаг 1.

Чтобы загрузить схему из файла, перейдите на вкладку «Server» на верхней панели навигации и нажмите «Data Import».

MySQL Workbench в Ubuntu

 

Шаг 2

Появится следующее диалоговое окно. Установите флажок “Import from Self-Contained File” и просмотрите файл SQL из вашей системы. Теперь нажмите кнопку Start Import.

MySQL Workbench в Ubuntu

MySQL Workbench в Ubuntu

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

 

Шаг 3

Нажмите «Data Import» на вкладке «Servers», установите флажок «Import from Self-Contained File» и укажите местоположение вашего файла данных. Теперь в Default Target Schema выберите целевую схему этих данных и нажмите кнопку Start Import. Этот шаг очень похож на шаг 2.

MySQL Workbench в Ubuntu

MySQL Workbench в Ubuntu

 

Просмотр таблиц

Нажмите кнопку обновления, чтобы увидеть импортированную схему. В нашем случае мы видим новую схему под названием «sakila».

MySQL Workbench в Ubuntu

 

Вы можете развернуть «sakila», чтобы просмотреть его содержимое. Вы можете просмотреть его таблицы, развернув раздел таблиц.

MySQL Workbench в Ubuntu

 

Соответствующий SQL-запрос для этого действия и результирующая таблица появляются в разделе запросов, если щелкнуть значок календаря справа от названия таблиц. Пока отображается сообщение об успешном завершении.

MySQL Workbench в Ubuntu

 

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

MySQL Workbench в Ubuntu

 

Вывод

На этом мы заканчиваем наше руководство по установке и работе с MySQL Workbench. MySQL Workbench — это удобный инструмент для манипулирования и управления базами данных с использованием серверов MySQL. Как мы видели, пользователи могут писать SQL-запросы для выполнения различных операций со своей схемой. Надеюсь, это было познавательное чтение!



2022-05-11T11:22:33
MariaDB

Разница между VARCHAR и TEXT в MySQL

MySQL имеет много типов данных для хранения строковых данных в таблице. VARCHAR и TEXT — два из них. Оба могут хранить максимум 65535 символов, но между этими типами данных, описанными в этом руководстве, есть некоторые различия.

 

VARCHAR против TEXT:

Существует много различий между типами данных VARCHAR и TEXT. Различия между этими типами данных описаны ниже.

 

Особенности VARCHAR и TEXT

Типы данных VARCHAR и TEXT по-разному хранят данные в таблице базы данных. Различные особенности этих типов данных описаны ниже.










VARCHARTEXT
В основном используется для хранения небольших строковых данных.В основном используется для хранения больших строковых данных.
Используется для хранения строковых данных переменной длины.Используется для хранения строковых данных фиксированной длины.
Максимальная длина строки может быть определена.Длина строки не может быть определена.
Индекс нельзя применять к этому типу данных.Индекс можно применять в этом типе данных.
Требуется длина + 1 байт пробела, если значение длины меньше или равно 255 символам, и длина + 2 байта пробела, если длина больше или равна 256 символам.Занимает длину +2 байта дискового пространства.
Работает медленнее.Работает быстрее.

 

Декларация VARCHAR и TEXT

Способы объявления типов данных VARCHAR и TEXT объясняются ниже путем создания двух таблиц с полем типов данных VARCHAR и TEXT. Длина требуется для определения типа данных VARCHAR, а длина не требуется для определения типа данных TEXT.

Выполните следующую инструкцию CREATE DATABASE, чтобы создать базу данных с именем test_db.

CREATE DATABASE test_db;

 

Запустите следующую инструкцию запроса, чтобы выбрать базу данных test_db перед созданием таблицы.

USE test_db;

 

Выполните следующую инструкцию CREATE TABLE, чтобы создать таблицу клиентов, содержащую пять полей. Здесь тип данных поля id — целое число, а тип данных полей name, email, address и contact_no — varchar, содержащий значение длины.

CREATETABLE customers(

id INTNOT NULL PRIMARY KEY,

name VARCHAR(30) NOT NULL,

email VARCHAR(50),

address VARCHAR(300),

contact_no VARCHAR(15));

 

Выполните следующую инструкцию DESCRIBE, чтобы проверить структуру таблицы клиентов.

DESCRIBE customers;

 

Выполните следующий запрос INSERT, чтобы вставить три записи в таблицу клиентов.

INSERT INTO `customers` (`id`, `name`, `email`, `address`, `contact_no`) VALUES ('01', 'Andrey Ex', 'Andrey@gmail.com', '25, aaaaaaaaaaaaaa, Bangladesh ', '0191275634'),

       ('02', 'Sasha Destroyer', 'Sasha@gmail.com', 'bbbbbbbbbbbbbbbbbb', '01855342357'),

       ('03', 'Masha Bubba', 'Masha@hotmail.com', 'cccccccccccccc', NULL);

 

Запустите следующую инструкцию SELECT, чтобы прочитать все записи таблицы клиентов.

SELECT * FROM customers;

 

Запустите следующую инструкцию CREATE TABLE, чтобы создать таблицу сотрудников, содержащую пять полей. Тип данных поля id — целое число. Тип данных полей name, email и contact_no — varchar. Тип данных адресного поля — текст. Здесь для поля адреса не объявлено значение длины из-за текстового типа данных.

CREATETABLE employees(

id INTNOT NULL PRIMARY KEY,

name VARCHAR(30) NOT NULL,

email VARCHAR(50),

address TEXT,

contact_no VARCHAR(15));

 

Выполните следующую инструкцию DESCRIBE, чтобы проверить структуру таблицы сотрудников.

DESCRIBE employees;

 

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

INSERT INTO `employees` (`id`, `name`, `email`, `address`, `contact_no`) VALUES ('01', 'Andrey Ex', 'Andrey@gmail.com', 'aaaaaaaaaaaaaaaaaaaaaaa', '0191275634'),

       ('02', 'Sasha Destroyer', 'Sasha@gmail.com', 'bbbbbbbbbbbbbbbbbbbbbb', '01855342357'),

       ('03', 'Masha Bubba', 'Masha@hotmail.com', 'ccccccccccccccccccc', NULL);

 

Выполните следующую инструкцию SELECT, чтобы прочитать все записи таблицы сотрудников.

SELECT * FROM employees;

 

Производительность VARCHAR и TEXT

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

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

SET SESSION profiling = 1;

 

Выполните следующий запрос SELECT, чтобы прочитать все записи таблицы клиентов.

SELECT * FROM customers;

 

Выполните следующий запрос SELECT, чтобы прочитать все записи таблицы сотрудников.

SELECT * FROM employees;

 

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

SHOW PROFILES;

 

Следующий вывод появится после выполнения команды SHOW PROFILES. Согласно выходным данным, запрос SELECT для таблицы клиентов содержит поле адреса типа данных VARCHAR, требуемое 0,00101000 секунд, а запрос SELECT для таблицы сотрудников, содержащей поле адреса типа данных TEXT, требует 0,00078125 секунд. Это доказывает, что тип данных TEXT работает быстрее, чем тип данных VARCHAR для тех же данных.

Вы можете сравнить выходные данные следующих двух запросов, чтобы подробно проверить производительность типов данных VARCHAR и TEXT.

SELECT * FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID=1;



SELECT * FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID=2;

 

Вывод:

Оба типа данных VARCHAR и TEXT важны для создания таблиц в базе данных MySQL. Различия между этими типами данных были должным образом объяснены в этом руководстве с примерами, чтобы помочь пользователям MySQL выбрать правильный тип данных поля таблицы во время создания таблицы.



2022-02-15T14:56:35
MariaDB

Как разделить строку в MySQL

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

 

Синтаксис SUBSTRING_INDEX():

Функция SUBSTRING_INDEX() принимает три аргумента и возвращает значение подстроки. Синтаксис функции SUBSTRING_INDEX() представлен ниже:

string SUBSTRING_INDEX(string, delimiter, count);

 

  • Первый аргумент — это строковое значение, которое будет разделено.
  • Второй аргумент — это разделитель, который будет использоваться для разделения строкового значения.
  • Третий аргумент определяет количество вхождений разделителя. Оно может быть положительным или отрицательным. Если значение третьего аргумента положительное, то значение подстроки будет возвращено слева. Если значение третьего аргумента отрицательное, значение подстроки будет возвращено справа.

 

Разделить строку с помощью функции SUBSTRING_INDEX():

В этой части статьи показаны различные варианты использования функции SUBSTRING_INDEX().

 

Пример 1: Разделить строку на основе положительного значения счетчика

В этой части руководства показаны четыре варианта использования функции SUBSTRING_INDEX() с положительным значением счетчика и другим разделителем.

Запустите следующую инструкцию SELECT, которая использует функцию SUBSTRING_INDEX() с положительным значением счетчика, 1, и пробелом в качестве разделителя. Основная строка «Welcome to AndreyEx» состоит из трех слов. Таким образом, в выводе будет напечатано первое слово строки.

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', ' ', 1);

 

Запустите следующую инструкцию SELECT, которая использует функцию SUBSTRING_INDEX() с положительным значением счетчика, 2, и символом «o» в качестве разделителя. Основная строка «Welcome to AndreyEx» содержит два раза символ «o». Второй раз «o» появилось во втором слове «to». Таким образом, вывод будет «Welcome to».

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', 'o', 2);

 

Выполните следующую инструкцию SELECT, которая использует функцию SUBSTRING_INDEX() с положительным значением счетчика, 1, и строкой ‘to’ в качестве разделителя. Основная строка «Welcome to AndreyEx» содержит строку «to» один раз. Таким образом, вывод будет «Welcome».

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', 'to', 1);

 

Выполните следующую инструкцию SELECT, которая использует функцию SUBSTRING_INDEX() с положительным значением счетчика, 3, и строкой ‘to’ в качестве разделителя. Основная строка «Welcome to AndreyEx» содержит строку «to» только один раз. Таким образом, основная строка будет возвращена на выходе.

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', 'to', 3);

 

Пример 2: Разделить строку на основе отрицательного значения счетчика

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

Выполните следующую инструкцию SELECT, в которой используется функция SUBSTRING_INDEX() с отрицательным значением счетчика, -1, и пробелом в качестве разделителя. Основная строка «Welcome to AndreyEx» состоит из трех слов. Итак, последнее слово строки будет напечатано в выводе для отрицательного значения:

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', ' ', -1);

 

Выполните следующую инструкцию SELECT, которая использует функцию SUBSTRING_INDEX() с отрицательным значением счетчика, -2, и символом «e» в качестве разделителя. Основная строка «Welcome to AndreyEx» содержит символ «e» только один раз. Таким образом, вывод будет «lcome toAndreyEx »:

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', 'e', -2);

 

Выполните следующую инструкцию SELECT, в которой используется функция SUBSTRING_INDEX() с отрицательным значением счетчика, -2, и строкой «in» в качестве разделителя. Основная строка «Welcome to AndreyEx» содержит два раза строку «yE». Таким образом, в выводе будет возвращена подстрока ‘ Andrex’.

SELECT SUBSTRING_INDEX('Welcome to AndreyEx', 'in', -2);

 

Пример 3: Разделить строковое значение таблицы

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

Выполните следующий запрос, чтобы создать базу данных с именем test_db:

CREATE DATABASE test_db;

 

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

USE test_db;

 

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

CREATE TABLE customers(

id INT NOT NULL PRIMARY KEY,

name VARCHAR(30) NOT NULL,

email VARCHAR(50),

contact_no VARCHAR(15));

 

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

INSERT INTO `customers` (`id`, `name`, `email`, `contact_no`) VALUES

('001', 'Andrey Ex', 'info@andreyex.ru', '+8 000 00 00 000'),

('002', 'Maxs Destroyer', 'Max***@yandex.com', '+8 000 00 00 000'),

('003', 'Alex Annihilator', 'Alex***@yandex.com', '+8 000 00 00 000');




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

SELECT * FROM customers;

 

Поле имени содержит имя и фамилию. Поле contact_no содержит номер мобильного телефона с кодом страны. Имя и номер мобильного телефона без кода страны можно прочитать из таблицы с помощью функции SUBSTRING_INDEX(). В следующем запросе SELECT первое имя будет получено с использованием разделителя пробела и 1 в качестве значения счетчика в функции SUBSTRING_INDEX(), а номер мобильного телефона без кода страны будет получен с использованием кода страны в качестве разделителя и -1 в качестве значения счетчика в функции SUBSTRING_INDEX():

SELECT

id, SUBSTRING_INDEX(name,' ',1) AS `First Name`, email, SUBSTRING_INDEX(contact_no,'+88',-1) AS Phone

FROM customers;

 

Вывод:

Различные варианты использования функции SUBSTRING_INDEX() с использованием разных значений аргументов обсуждались в этом руководстве с использованием нескольких примеров. Мы надеемся, что примеры в этой статье помогут пользователям MySQL узнать об использовании функции SUBSTRING_INDEX() и правильно применить ее в запросе SELECT.



2022-02-08T16:25:16
MariaDB