Мне нужно узнать, что такое sql
.
Но я слишком боюсь создания базы данных с правами root.
Это мой текущий "прогресс":
$pacman -Syu mariadb # succeeds
$mysql_install_db --basedir=~/.sql/install --datadir=~/.sql/dat
FATAL ERROR: Could not find my_print_defaults
Что теперь? Дайте мне учебник по sql 101 с любой реализацией, популярной в Arch
.
@fra-san Конечно
@terdon Я следил за этимВсе говорят, что Мария лучшая, я просто не знаю, как с ней обращаться.
@JeffSchaller Я хочу иметь непривилегированную базу данных, с которой можно играть.
При инициализации каталогов данных MariaDB в Arch Linux вам нужно только установить параметр --basedir
, если вы установили MariaDB в произвольном месте. В вашем случае это не нужно, так как вы установили официальный пакет mariadb с помощью pacman
.
(Чтобы узнать больше, вы можете непосредственно проверить /usr/bin/mysql_install_db
сценарий оболочки:--basedirs
аргумент (, который автоматически -определяется, когда он не установлен )используется в качестве префикса в путях к исполняемым файлам. и библиотеки, чтобы не указывать место для пользовательских данных ).
Работает
mkdir ~/.sql
mysql_install_db --datadir="/home/$(id -u -n)/.sql/dat"
как обычному пользователю должно быть достаточно. Это подразумевает, что вы затем собираетесь также запуститьmysqld
(процесс сервера базы данных )как ваш пользователь. Например:
mkdir /run/user/$(id -u)/mariadbtest/
mysqld --socket=/run/user/$(id -u)/mariadbtest/mysql.socket \
--datadir="/home/$(id -u -n)/.sql/dat"
После этого вы сможете подключиться с помощью:
mysql --socket=/run/user/$(id -u)/mariadbtest/mysql.socket