Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Дать права пользователю на создание БД (и создать БД) / 25 сообщений из 58, страница 1 из 3
18.12.2019, 11:07
    #39904557
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Дано:

1. Имеется запись в databses.conf: CSVCLog = {путь}\csvclog.fdb
2. Имеется пользователь в security.db (пусть будет Loggie)
3. Имеется isq.

Возникли такие вопросы:

1. Как правильно создать такую базу через isql? При попытке CREATE DATABASE CSVCLog оно ругается что 'Token Unknown CSVCLog'.
2. Как дать права Loggie, чтобы он мог создать эту базу сам (а так же DROP её же и вообще все права на неё), без участия SYSDBA, не давая при этом ему RDB$ADMIN?

Дополнение: создать базу по имени файла нельзя, так как DatabaseAccess = none, версия Firebird - 3.0.4.

Может мне кто-нибудь подсказать путь решения?
Заранее спасибо :)
...
Рейтинг: 0 / 0
18.12.2019, 11:14
    #39904564
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp> 1. Как правильно создать такую базу через isql?
alekcvp> При попытке CREATE DATABASE CSVCLog
alekcvp> оно ругается что 'Token Unknown CSVCLog'.

Полную команду покажи.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 11:17
    #39904567
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Гаджимурадов Рустам
alekcvp> 1. Как правильно создать такую базу через isql?
alekcvp> При попытке CREATE DATABASE CSVCLog
alekcvp> оно ругается что 'Token Unknown CSVCLog'.

Полную команду покажи.

Код: plaintext
1.
2.
3.
4.
SQL> CREATE DATABASE CSVCLog USER SYSDBA PASSWORD '...';
Statement failed, SQLSTATE = 42000
SQL error code = -104
-Token unknown
-CSVCLog

Я так понимаю, что оно пытается embedded использовать, а ему на databases.conf до фонаря. Но как заставить через сервер это делать - я не понимаю, inet:// и xnet:// оно не воспринимает.
...
Рейтинг: 0 / 0
18.12.2019, 11:37
    #39904580
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Самое смешное:

Код: plaintext
1.
2.
SQL> connect inet://servername:CSVCLog user SYSDBA password '...';
Statement failed, SQLSTATE = 08001
unavailable database

Но при этом:

Код: plaintext
1.
2.
3.
4.
SQL> create database inet://servername:CSVCLog user SYSDBA password '...';
Statement failed, SQLSTATE = 42000
SQL error code = -104
-Token unknown
-inet
...
Рейтинг: 0 / 0
18.12.2019, 12:22
    #39904620
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Дал права на CREATE DATABASE пользователю (через security.db):

Код: plaintext
1.
2.
3.
4.
SQL> show grants;

/* Grant permissions for this database */
...
GRANT CREATE DATABASE TO USER CDC\Service

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

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE DATABASE 'inet://server/CSVCLog'
USER 'CDC\Service' PASSWORD '...'
PAGE_SIZE = 4096
DEFAULT CHARACTER SET WIN1251;

Your user name and password are not defined. Ask your database administrator to set up a Firebird login.
Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements
GDS Code: 335544472 - SQL Code: -902 - Error Code: 152

Что я делаю не так?..
...
Рейтинг: 0 / 0
18.12.2019, 12:23
    #39904622
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp> CREATE DATABASE CSVCLog USER SYSDBA PASSWORD

CREATE DATABASE server:CSVCLog ... тоже не работает?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:23
    #39904623
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
18.12.2019 12:22, alekcvp пишет:
> Что я делаю не так?..

всё
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:24
    #39904625
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp> CREATE DATABASE 'inet://server/CSVCLog'

Чистейшая ахинея.

alekcvp> Что я делаю не так?

1. Пытаешься "методом тыка".
2. Не вали все вопросы в кучу,
разбирайся с каждым по очереди.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:26
    #39904627
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Хотя может и не ахинея, ХЗ.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:27
    #39904629
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
В общем, сначала "сервер:алиас" пробуй, потом права и всё остальное.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:38
    #39904638
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
18.12.2019 12:27, Гаджимурадов Рустам пишет:
> сначала "сервер:алиас" пробуй

ты уверен что он там прописан?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:41
    #39904642
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Мимопроходящий

18.12.2019 12:27, Гаджимурадов Рустам пишет:
> сначала "сервер:алиас" пробуй

ты уверен что он там прописан?

А ты читать сообщения не пробовал перед ответом?..
...
Рейтинг: 0 / 0
18.12.2019, 12:44
    #39904645
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Перестаньте зря препираться (оба).
Просто попробуй (с кавычками).

Запускается ISQL откуда, кстати,
на сервере или по сети?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:46
    #39904648
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp
Может мне кто-нибудь подсказать путь решения?
LangRef читать не пробовали?
Код: plaintext
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.
31.
32.
33.
set ISC_USER=owner&set ISC_PASSWORD=Парол
echo show grant;|isql -q xnet://security.db|findstr OWNER
Database: xnet://security.db, User: OWNER
GRANT CREATE DATABASE TO USER OWNER

for %A in (f*f d*f) do @echo %~nxA:&findstr -v ^^# %A|findstr -v ^^$&echo.
firebird.conf:
  BugcheckAbort = 1
  DatabaseAccess        = None
  FileSystemCacheThreshold 201K    # pages
  DefaultDbCachePages   =    5K    # pages
  TempCacheLimit        =    640M  # bytes
  LockMemSize           =     12M  # bytes
  LockHashSlots         =  30011   # slots
  MaxUnflushedWriteTime = -1
  MaxUnflushedWrites    = -1
  IpcName               = FB304_0
  RemoteBindAddress     = 127.0.0.1
  RemoteServicePort     = 13040
  WireCompression       = true
  WireCrypt             = Enabled
  AuthServer            = Srp
  UserManager           = Srp
  ServerMode            = Super

databases.conf
employee = $(dir_sampleDb)/employee.fdb
security.db = $(dir_secDb)/security3.fdb
{
  RemoteAccess = false
  DefaultDbCachePages = 500
}
.fdb = e:/db/30/.fdb
test = d:/db/30/test.fdb
доки - рулят
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
echo create database 'localhost/13040:test';show database;|isql -q -z
ISQL Version: WI-V3.0.4.33054 Firebird 3.0
SQL> Server version:
WI-V3.0.4.33054 Firebird 3.0
WI-V3.0.4.33054 Firebird 3.0/tcp (basid)/P15:CZ
WI-V3.0.4.33054 Firebird 3.0/tcp (basid)/P15:CZ
Database: localhost/13040:test
        Owner: OWNER
PAGE_SIZE 8192
Number of DB pages allocated = 180
Number of DB pages used = 176
Number of DB pages free = 4
Sweep interval = 20000
Forced Writes are ON
Transaction - oldest = 1
Transaction - oldest active = 2
Transaction - oldest snapshot = 2
Transaction - Next = 5
ODS = 12.0
Database not encrypted
Default Character set: NONE
...
Рейтинг: 0 / 0
18.12.2019, 12:48
    #39904650
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp
Код: plaintext
1.
SQL> CREATE DATABASE CSVCLog USER SYSDBA PASSWORD '...';
Тут имя БД - строковый литерал, а не имя объекта\ключевое слово.
Кавычки.
...
Рейтинг: 0 / 0
18.12.2019, 12:49
    #39904651
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
18.12.2019 12:48, hvlad пишет:
> Тут имя БД - строковый литерал, а не имя объекта\ключевое слово.
> Кавычки.

сломал интригу
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:51
    #39904655
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Мимопроходящий
18.12.2019 12:48, hvlad пишет:
> Тут имя БД - строковый литерал, а не имя объекта\ключевое слово.
> Кавычки.

сломал интригу
Ничё, он ещё права не дал - поинтригуешь :)
...
Рейтинг: 0 / 0
18.12.2019, 12:54
    #39904659
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
А потом вы удивляетесь, что новички плачут. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:56
    #39904665
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
18.12.2019 12:54, Гаджимурадов Рустам пишет:
>
> А потом вы удивляетесь, что новички плачут. :)
>

это не новичок.
но доку не чтит абсолютно!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 12:57
    #39904666
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Гаджимурадов Рустам
Перестаньте зря препираться (оба).
Просто попробуй (с кавычками).

Запускается ISQL откуда, кстати,
на сервере или по сети?


'cdc.domain.local:CSVCLog' (именно в кавычках!) прокатило, спасибо.
Запускается локально.

Теперь остался вопрос, как другому пользователю дать права на создание базы?
...
Рейтинг: 0 / 0
18.12.2019, 13:00
    #39904671
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
Basil A. Sidorov
[spoiler LangRef читать не пробовали?]


Пробовал. Везде написано только про GRANT CREATE DATABASE.
Вот что получаю:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Use CONNECT or CREATE DATABASE to specify a database
SQL> connect security.db user CDC\Service password '...';
Database: security.db, User: CDC\SERVICE
SQL> show grants;

/* Grant permissions for this database */
<skip>
GRANT CREATE DATABASE TO USER CDC\SERVICE

SQL> create database 'cdc:csvclog' user "CDC\Service" password '...';
Statement failed, SQLSTATE = 28000
no permission for CREATE access to DATABASE csvclog
SQL>

Более подробную доку гугл не показывает.
...
Рейтинг: 0 / 0
18.12.2019, 13:03
    #39904677
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp> Запускается локально.

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


alekcvp> create database 'cdc:csvclog' user CDC\Service password '...'

Вообще-то имя пользователя - тоже строковый литерал.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 13:03
    #39904678
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
18.12.2019 13:00, alekcvp пишет:
> Более подробную доку гугл не показывает.

ЧИТАТЬ__ВСЕМ,__КТО__ПРИШЕЛ__СЮДА__В__ПЕРВЫЙ__РАЗ!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 13:05
    #39904680
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
alekcvp > Более подробную доку гугл не показывает.

На офсайте же есть langref давно, и в PDF, и в HTML.
Там может чего и не хватает, но уж create database точно есть.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2019, 13:05
    #39904682
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дать права пользователю на создание БД (и создать БД)
hvlad
alekcvp
Код: plaintext
1.
SQL> CREATE DATABASE CSVCLog USER SYSDBA PASSWORD '...';
Тут имя БД - строковый литерал, а не имя объекта\ключевое слово.
Кавычки.

А имя пользователя тут - не строковый литерал? Почему тогда во всей документации он идёт без кавычек?
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Дать права пользователю на создание БД (и создать БД) / 25 сообщений из 58, страница 1 из 3
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]