Как создать пользователя в sql
Перейти к содержимому

Как создать пользователя в sql

  • автор:

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

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

После установки MySQL/MariaDB автоматически будет создан MySQL пользователь root. Работать с базой данных под root небезопасно, поэтому необходимо создать нового пользователя, а затем назначить ему специальные права доступа. Сделать это можно через консоль или через phpMyAdmin.

Как создать нового пользователя в MySQL

через phpMyAdmin
через консоль

Чтобы добавить нового пользователя, установите приложение phpMyAdmin. Как установить phpMyAdmin, описано в инструкции. После установки проверьте, что ваш сервер включен. Для входа в phpMyAdmin используйте root-логин и root-пароль сервера.

phpMyAdmin Учетные записи пользователей

Откройте приложение и перейдите на вкладку Учетные записи пользователей. Кликните по строке Добавить учетную запись пользователя:

phpMyAdmin Заполните поля

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

  • Если вы хотите дать новому пользователю доступ только к конкретным базам данных, на этом этапе можно не назначать никаких привилегий.
  • Если вы хотите выбрать все привилегии и предоставить новому пользователю неограниченный доступ, кликните Отметить все.

Нажмите кнопку Вперёд внизу страницы:

phpMyAdmin Отметить все

Готово, вы добавили учётную запись:

phpMyAdmin Новая учетная запись

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

Прежде чем создать нового пользователя через консоль, подключитесь к VPS-серверу по SSH. После этого:

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

  • вместо user-name укажите логин пользователя базы данных;
  • вместо password укажите пароль нового пользователя.

На этом этапе новый пользователь не имеет никаких разрешений на работу с базами данных. Он не может войти в систему и добраться до оболочки MySQL, поэтому нужно предоставить ему неограниченные права доступа. Для этого введите команду: GRANT ALL PRIVILEGES ON * . * TO ‘user-name’@’localhost’; Не забудьте изменить user-name на логин, который был указан при создании пользователя.

Чтобы изменения вступили в силу, введите команду: FLUSH PRIVILEGES;

Готово, наш новый пользователь получил те же права доступа в базе данных, что и пользователь MySQL root.

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

через phpMyAdmin
через консоль

phpMyAdmin Редактировать привилегии

Откройте phpMyAdmin и перейдите на вкладку Учетные записи пользователей. Выберите нужную учетную запись и нажмите Редактировать привилегии:

phpMyAdmin Базы данных

На открывшейся странице перейдите на вкладку База данных. Выберите из списка базу данных, к которой хотите дать доступ пользователю, и нажмите Вперёд:

phpMyAdmin Вперёд

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

Готово, вы настроили привилегии для пользователя.

Важно: обязательно выполняйте команду FLUSH PRIVILEGES после любого изменения в правах доступа. Для выполнения каждой из команд нужно иметь права доступа root.

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

GRANT [тип прав] ON [имя базы данных].[имя таблицы] TO ‘user-name’@’localhost’;

Замените значения внутри кавычек:

  • вместо имя базы данных укажите нужную базу данных;
  • вместо имя таблицы укажите имена таблиц, к которым хотите дать доступ или укажите .*, чтобы дать права на конкретную базу и все таблицы;
  • вместо тип прав — тот тип, который вы хотите предоставить пользователю.

В MySQL права доступа бывают нескольких типов:

  • ALL PRIVILEGES – даёт пользователю MySQL полный доступ к заданной базе данных (если база данных не указана, то ко всем);
  • CREATE – позволяет пользователю создавать базы данных/таблицы;
  • SELECT – позволяет пользователю делать выборку данных;
  • INSERT – позволяет пользователю добавлять новые записи в таблицы;
  • UPDATE – позволяет пользователю изменять существующие записи в таблицах;
  • DELETE – позволяет пользователю удалять записи из таблиц;
  • DROP – позволяет пользователю удалять записи в базе данных/таблицах.

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

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

GRANT CREATE, SELECT ON *.* TO ‘user-name’@’localhost’;

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

REVOKE [тип прав] ON [имя базы данных].[имя таблицы] FROM ‘user-name’@’localhost’;

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

REVOKE ALL PRIVILEGES ON *.* FROM ‘user-name’@’localhost’;

Обратите внимание, что при при любой отмене разрешений синтаксис требует, чтобы вы использовали FROM, а не TO.

  • Чтобы просмотреть текущие разрешения пользователя, выполните команду:

SHOW GRANTS username;

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

DROP USER ‘user-name’@’localhost’;

MS SQL — Создание пользователя с полными правами к базе

Добавляем пользователя в группу владельцев базы данных:

ALTER ROLE db_owner ADD MEMBER admin_web; GO

Похожие записи

Подписаться
Войти через D
Я разрешаю создать мне учетную запись

Когда вы первый раз заходите с помощью соцсетей, мы получаем публичную информацию из вашей учетной записи, предоставляемой провайдером услуги соцсети в рамках ваших настроек конфиденциальности. Мы также автоматически получаем ваш e-mail адрес для создания вашей учетной записи на нашем веб сайте. Когда она будет создана, вы будете авторизованы под этой учетной записью.

Не согласен Согласен
Войти через D
Я разрешаю создать мне учетную запись

Когда вы первый раз заходите с помощью соцсетей, мы получаем публичную информацию из вашей учетной записи, предоставляемой провайдером услуги соцсети в рамках ваших настроек конфиденциальности. Мы также автоматически получаем ваш e-mail адрес для создания вашей учетной записи на нашем веб сайте. Когда она будет создана, вы будете авторизованы под этой учетной записью.

Не согласен Согласен
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Выбрать язык

Ноябрь 2023

Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

Свежие записи

  • Palo Alto VM-Series Firewall: GlobalProtect
  • Palo Alto VM-Series Firewall: GlobalProtect — AWS SAML
  • Palo Alto VM-Series Firewall: GlobalProtect — OneLogin SAML
  • Palo Alto VM-Series Firewall: Let’s Encrypt сертификат
  • Palo Alto VM-Series Firewall: AWS HA Multi AZ для GlobalProtect — Часть 2

Свежие комментарии

  • Сурен к записи AWS — EBS уменьшение размера
  • Андрей к записи FIX ERROR — Python2.7: PIP не работает после апгрейда
  • VoOne к записи Ansible Playbook — Установка Docker в CentOS 7
  • Artem к записи Jenkins — Python VirtualEnv с выбором версий
  • Artem к записи Kubernetes — NFS provisioner

Рубрики

  • Backup (2)
  • BASH (13)
  • Command Examples (6)
  • Config Examples (17)
  • Database (2)
  • DevOps (162)
    • Ansible (11)
    • AWS (47)
    • CI/CD (45)
    • Docker (19)
    • GCP (5)
    • Helm (1)
    • Kubernetes (30)
    • Terraform (8)

    Добавление пользователя и создание новой базы данных в Microsoft SQL Server 2008 R2

    sql_server

    Продолжаем развертывать Microsoft SQL Server 2008 R2. После установки необходимо добавить пользователя для работы с БД, и, соответственно, создать новую базу данных. Ниже будет рассказано как это сделать.

    0. Оглавление

    1. Добавление нового пользователя
    2. Создание новой базы данных

    1. Добавление нового пользователя

    Запускаем программу «Среда SQL Server Management Studio» («Пуск» — «Microsoft SQL Server 2008 R2» — «Среда SQL Server Management Studio» ) .

    sozdanie_bd_user_sql_2008r2_001

    В открывшемся окне выбираем:

    • Тип сервера: «Компонент Database Engine» .
    • Имя сервера в формате «\ » , где
      — имя физического компьютера на котором установлен SQL Server (в моем примере «S4» ).
      — задается только в случае подключения к именованному экземпляра SQL Server.
    • Проверка подлинности:«Проверка подлинности SQL Server» или «Проверка подлинности Windows»
    • Имя входа: имя пользователя SQL Server.
    • Пароль: в случае проверки подлинности SQL Server, пароль для выбранного пользователя.

    После чего нажимаем «Соединить» .

    sozdanie_bd_user_sql_2008r2_002

    Если все введено верно, в окне «Обозреватель объектов» мы увидим вкладку с именем нашего SQL-сервера. В нем раскрываем вкладку «Безопасность» — «Имена входа» и в контекстном меню выбираем «Создать имя входа» .

    sozdanie_bd_user_sql_2008r2_003

    Откроется окно «Создание имени входа» . На вкладке «Общие» заполняем:

    • Имя входа: наименование пользователя SQL.
    • Проверку подлинности выбираем: SQL Server.
    • Придумываем пароль для пользователя.

    (При необходимости можно определить и остальные настройки безопасности). Затем переходим на вкладку «Роли сервера» .

    sozdanie_bd_user_sql_2008r2_004

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

    Если создается пользователь для подключения программ 1С:Предприятие 7.7 или сервера 1С:Предприятия 8, то достаточно указания ролей

    • dbcreator
    • processadmin

    назначается всем пользователям.

    Указав все необходимые роли для создаваемого пользователя нажимаем «ОК» .

    sozdanie_bd_user_sql_2008r2_005

    На этом процедура создания пользователя завершена.

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

    Для добавления новой базы данных, в «Среде Microsoft SQL Server Management Studio» кликаем правой кнопкой мышки на вкладке «Базы данных» и выбираем «Создать базу данных» .

    sozdanie_bd_user_sql_2008r2_006

    В открывшемся окне «Создание базы данных» на вкладке «Общие» заполняем:

    • Задаем имя базы данных. Имя базы данных не должно начинаться с цифры или иметь пробелы в названии, иначе получим ошибку:
      «неправильный синтаксис около конструкции %имя базы данных%» .
    • В качестве владельца выбираем созданного на предыдущем шаге пользователя.

    Затем переходим на вкладку «Параметры» .

    sozdanie_bd_user_sql_2008r2_007

    Здесь необходимо выбрать «Модель восстановления» базы данных и «Уровень совместимости» . Эти параметры зависят от того приложения, которое будет с создаваемой базой данных на SQL сервере. Например для 1С:Предприятие 7.7 необходимо задать

    • Уровень совместимости: «SQL Server 2000 (80)» .

    Очень внимательно стоит отнестись к параметру «Модель восстановления» создаваемой базы данных. Подробно про модели восстановления баз данных и о том, на что данный параметр влияет, я писал здесь. Если сомневаетесь — выбирайте простую модель восстановления.

    Определившись с параметрами нажимаем «ОК» .

    sozdanie_bd_user_sql_2008r2_008

    После чего в списке мы должны увидеть только что созданную базу данных.

    sozdanie_bd_user_sql_2008r2_009

    Помогла ли Вам данная статья?

    Смотрите также:

    Добавление базы данных в Microsoft SQL Server 2012 Ниже приведена пошаговая инструкция, показывающая как добавить новую базу данных в Microsoft SQLServer 2012 (в более старых редакциях, например в Microsoft SQL Server 2008 R2, набор действий аналогичен). Запускаем…

    Создание и восстановление резервной копии базы данных в Microsoft SQL Server 2008 R2 В данной статье будет рассказано как вручную сделать полную резервную копию базы данных в SQL Server 2008 R2 с помощью программы «Среда Microsoft SQL Server Management Studio». 0.…

    Определение установленной версии Microsoft SQL Server В данной статье будет рассказано как определить версию (Product Version), уровень продукта (Product Level), а также выпуск или редакцию (Edition) установленного Microsoft SQL Server. В данной статье, в качестве примера используется…

    Запись опубликована в рубрике Microsoft SQL Server 2008 с метками 1Сv7, 1Сv8, SQL. Добавьте в закладки постоянную ссылку.

    16 Responses to Добавление пользователя и создание новой базы данных в Microsoft SQL Server 2008 R2

    Dmitrij говорит:

    Браво, Виталий !
    Чётко и ясно.
    Есть ли у Вас пример создания какой-либо базы в этой среде ?
    Желательно в таком же ясном стиле ?

    Виталий Онянов говорит:

    Спасибо за добрые слова!
    А созданием баз вручную в MS SQL никогда не занимался, так как работаю с 1С. Если вдруг будет такая задача, то постараюсь запротоколировать это дело.

    Alex говорит:
    Наконец-то просто и понятно все показано. Спасибо!
    У вас талант доходчиво объяснять запутанные вещи.
    Алексей говорит:

    Мне одно не понятно осталось. Для каких целей нужно создавать отдельного SQL-пользователя, отличного от sa и назначать его владельцем? Да и зачем sa нужен, если как я понял можно авторизоваться штатным Администратором ОС? Это ради безопасности или еще из каких-то соображений? Требуемые роли же можно любому пользователю назначить?

    Виталий Онянов говорит:

    Да, конечно же для безопасности.
    Предположим ситуацию, когда на одном SQL-сервере расположены базы данных, которые обслуживают разные люди или же принадлежат разным организациям.
    Например, пусть у вас помимо баз 1С на SQL-сервере крутятся еще базы других программ. Если вы захотите отдать обслуживание информационных баз 1С фирме-франчайзи, скорее всего, придется сообщить им имя входа, под которым базы 1С подключаются к SQL-серверу. Если вы сообщите пароль для учетной записи sa, вы по сути дадите посторонним людям доступ ко всем базам данных, к параметрам SQL-сервера, настройкам безопасности и т. д. Чтобы избежать этого, я и рекомендую создавать отдельного пользователя для каждой службы, обращающейся к серверу баз данных. Это может быть как пользователь с аутентификацией SQL-сервера, так и пользователь Windows или домена.

    Здравствуйте! При выборе уровня совместимости, нету SQL Server 2000 (80). Хотя в корневой папке MSSQL, есть папки 80, 90, 100, 110. Пробовал попробовать через мастер установки доставить компоненты, но нужный не нашёл.

    Создание нового пользователя и раздача прав в MySQL

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

    Как создать обычного пользователя в MySQL

    Чтобы добавить пользователя в MySQL необходимо изначально иметь привилегии на создание пользователей. Синтаксис запроса выглядит так:

    CREATE USER [IF NOT EXISTS]
    user [auth_option] [, user [auth_option]] .
    DEFAULT ROLE role [, role ] .
    [REQUIRE ]
    [WITH resource_option [resource_option] . ]
    [password_option | lock_option] .
    [COMMENT 'comment_string' | ATTRIBUTE 'json_object']
    • [IF NOT EXISTS] – если пользователь существует, то команда остановит выполнение. Необязательный параметр.
    • User – имя учетной записи. Состоит из имени пользователя и имени хоста. (‘user_name‘@’host_name‘). Часть ‘host_name‘ является не обязательной (задает хост, с которого можно будет подключиться с данным именем, % — означает все возможные хосты). Если мы хотим в MySQL создать пользователя для удалённого подключения, то можно указать доменное имя, IP-адрес или адрес подсети. Имя учетной записи, состоящей только из имени пользователя, можно записать так: ‘user_name‘@’%‘ – такая учетная запись будет доступна с любого хоста. Кроме того, можно создать анонимного пользователя: »@’localhost’.
    • [auth_option] необязательное значение, указывает, как учетная запись проходит аутентификацию (пароль, свойства блокировки и т.д.).
    • DEFAULT ROLE – задает роль пользователя.
    • REQUIRE tls_option [[AND] tls_option] . > – если указано, то проверяет сертификат X.509 в дополнении к обычной аутентификации.
    • WITH – если указано, позволяет установить ограничение на использование ресурсов сервера. Например, ограничить кол-во запросов, обновлений или подключений к серверу.
    • password_option – параметры управления паролями (необязательный параметр). Например, срок действия, ограничение повторного использования, отслеживание неудачных попыток входа.
    • COMMENT…| ATTRIBUTE – добавление пользовательских комментариев или атрибутов в формате json (нельзя использовать одновременно). Необязательный параметр.

    Выдача привилегий

    Создать пользователя и дать права на базу в MySQL – первое, что вы делаете, начиная работу. Чтобы выдать привилегии или назначить роль (роль – это именованный набор привилегий) используется оператор GRANT. Одновременно выдать и то, и другое нельзя. Чтобы выдавать привилегии, необходимо самому иметь эти привилегии.

    Синтаксис для определения роли учетной записи:

    GRANT role [, role] . 
    TO user_or_role [, user_or_role] .
    [WITH ADMIN OPTION]
    • role – роль, которую предоставляем.
    • user_or_role – имя учетной записи или роль.
    • WITH ADMIN OPTION – если указано, то с учетной записи, которой предоставили роль, можно будет также выдать эту роль кому-то ещё. Пример:
    GRANT 'role1', 'role2' TO 'user1'@'localhost', 'user2'@'localhost';

    Синтаксис для добавления привилегий:

    GRANT
    priv_type
    ON [object_type] priv_level
    TO user_or_role
    • priv_type – тип привилегий. Их много. Например, привилегии для создания таблиц, их обновления, заполнения или удаления; для создания ролей, пользователей, индексов; привилегии администрирования резервного копирования и учетных записей без паролей и много-много всего еще.
    • object_type – если указано, задает тип следующего объекта (может быть TABLE, FUNCTION или PROCEDURE).
    • priv_level – задает уровень привилегий.

    Привилегии могут быть:

    • глобальные – например, на создание пользователей. Применяются ко всем базам на сервере. Синтаксис: ON *.*
     GRANT SELECT, INSERT ON *.* TO 'user_name'@'localhost';
    • баз данных – применяются ко всем объектам в указанной базе данных. Применяются для создания или удаления таблиц. Пример:
     GRANT SELECT, INSERT ON mydb.* TO 'user_name'@'localhost';
    • таблиц – применяются ко всем столбцам в таблице. Применяется вставка или обновление записей. Пример:
    GRANT SELECT, INSERT ON mydb.mytable TO 'user_name'@'localhost';
    • столбцов – применяется к определенным столбцам (вставка, просмотр, обновление данных). В примере за привилегией следует название столбца в круглых скобках:
     GRANT SELECT (col1), INSERT (col1, col2) ON mydb.mytbl TO 'user_name'@'localhost';

    Также есть привилегии подпрограмм и прокси-пользователей.

    Если предоставить учетной записи все привилегии, то можно создать «суперпользователя»:

     GRANT ALL ON *.* TO 'user_name'@'localhost';

    Для того чтобы отозвать роли или привилегии учетной записи, используется REVOKE.

    REVOKE INSERT ON *.* FROM 'user_name'@'localhost';

    Мы отозвали у пользователя привилегию вставки данных в таблицы на глобальном уровне.

    Чтобы удалить пользователя, используется DROP:

    DROP USER 'user_name'@'localhost';

    Тарифы MySQL

    Заключение

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

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

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