Mysql has any setup what can generate the problem?
hmm it seems to be working from inside /mnt/dietpi_userdata only. Did you have changed anything? As this was failing before.
I give 777 access to the dietpi folder, maybe that was the case. Maybe mysql user can to give root group or samething?
After give root premission, the errror is different
usermod -a -G root mysql
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: failed (Result: exit-code) since Fri 2023-04-28 09:34:47 BST; 38s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 770 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 774 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 776 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 827 ExecStart=/usr/sbin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
Main PID: 827 (code=exited, status=1/FAILURE)
Status: "MariaDB server is down"
CPU: 154ms
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [Note] InnoDB: Loading buffer pool(s) from /mnt/dietpi_userdata/mysql/ib_buffer_pool
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [Note] InnoDB: Cannot open '/mnt/dietpi_userdata/mysql/ib_buffer_pool' for reading: No such file or directory
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [ERROR] Could not open mysql.plugin table: "Table 'mysql.plugin' doesn't exist". Some plugins may be not loaded
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [Note] Server socket created on IP: '127.0.0.1'.
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.db' doesn't exist
ápr 28 09:34:47 DietPi mariadbd[827]: 2023-04-28 9:34:47 0 [ERROR] Aborting
ápr 28 09:34:47 DietPi systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
ápr 28 09:34:47 DietPi systemd[1]: mariadb.service: Failed with result 'exit-code'.
ápr 28 09:34:47 DietPi systemd[1]: Failed to start MariaDB 10.5.18 database server.
root@DietPi:~#
ok at least the database seems to be able to start. Strange that it requires such special privileges. This was never the case before and your are the only one where this is needed. Did you have done anything on user/permissions before?
Anyway, the database is failing because of missing files. I guess we lost them halfway trying to fix things
You could try to reinstall database server
apt install --reinstall mariadb-server -y
I didn’t do anithing serius, but I give premission to root the Deluge user and others…
root@DietPi:~# apt install --reinstall mariadb-server -y
Csomaglisták olvasása... Kész
Függőségi fa építése... Kész
Állapotinformációk olvasása... Kész
0 frissített, 0 újonnan telepített, 1 újratelepítendő, 0 eltávolítandó és 0 nem frissített.
Letöltendő adatmennyiség: 35,4 kB.
A művelet után 0 B lemezterület kerül felhasználásra.
Letöltés:1 https://deb.debian.org/debian bullseye/main amd64 mariadb-server all 1:10.5.18-0+deb11u1 [35,4 kB]
Letöltve 35,4 kB 0mp alatt (291 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
(Adatbázis olvasása ... 40425 files and directories currently installed.)
Preparing to unpack .../mariadb-server_1%3a10.5.18-0+deb11u1_all.deb ...
Unpacking mariadb-server (1:10.5.18-0+deb11u1) over (1:10.5.18-0+deb11u1) ...
Beállítás: mariadb-server (1:10.5.18-0+deb11u1) ...
reboot
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: failed (Result: exit-code) since Fri 2023-04-28 10:20:15 BST; 37s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 773 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 777 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 779 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 830 ExecStart=/usr/sbin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
Main PID: 830 (code=exited, status=1/FAILURE)
Status: "MariaDB server is down"
CPU: 99ms
ápr 28 10:20:14 DietPi systemd[1]: Starting MariaDB 10.5.18 database server...
ápr 28 10:20:15 DietPi mariadbd[830]: 2023-04-28 10:20:15 0 [Note] /usr/sbin/mariadbd (mysqld 10.5.18-MariaDB-0+deb11u1) starting as process 830 ...
ápr 28 10:20:15 DietPi mariadbd[830]: 2023-04-28 10:20:15 0 [Warning] Can't create test file /var/lib/mysql/DietPi.lower-test
ápr 28 10:20:15 DietPi mariadbd[830]: [99B blob data]
ápr 28 10:20:15 DietPi mariadbd[830]: 2023-04-28 10:20:15 0 [ERROR] Aborting
ápr 28 10:20:15 DietPi systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
ápr 28 10:20:15 DietPi systemd[1]: mariadb.service: Failed with result 'exit-code'.
ápr 28 10:20:15 DietPi systemd[1]: Failed to start MariaDB 10.5.18 database server.
root@DietPi:~#
Is it possible to put mysql in root before reinstall or give all the file system 777 maybe…
I guess the user will be overwritten due to package install.
Can you share content of
ls -la /mnt/dietpi_userdata/mysql/
No folder or file:
root@DietPi:~# ls -la /mnt/dietpi_userdata/mysql/
ls: ‘/mnt/dietpi_userdata/mysql/’ nem érhető el: Nincs ilyen fájl vagy könyvtár
root@DietPi:~#
root@DietPi:~# ls -la /mnt/dietpi_userdata/
összesen 76
drwxrwxrwx 10 dietpi dietpi 4096 ápr 28 10.12 .
drwxrwxrw- 8 root root 4096 márc 15 16.17 …
drwxrwxrwx 4 debian-deluged root 4096 márc 22 13.26 deluge
-rwxrwxrwx 1 root root 2035 márc 1 05.11 docker-compose.yml-immich
-rwxrwxrwx 1 root root 10475 márc 10 16.01 docker-compose.yml-original
-rwxrwxrwx 1 root root 9066 márc 14 08.05 docker-compose.yml-photoprism
drwx–x— 12 root root 4096 ápr 28 10.20 docker-data
drwxrwxr-x 2 dietpi dietpi 4096 márc 9 09.58 downloads
-rwxrwxrwx 1 root root 3384 márc 14 20.24 .env-Immich
drwxrwxrwx 2 filebrowser root 4096 márc 8 12.28 filebrowser
-rwxrwxrwx 1 root root 3372 márc 20 17.21 immich.env
drwxrwxrwx 9 jellyfin jellyfin 4096 márc 8 16.49 jellyfin
-rwxrwxrwx 1 root root 0 ápr 28 07.17 mariadb-database-backup.sql
drwxrwxr-x 2 dietpi dietpi 4096 márc 8 12.28 Music
drwxrwxr-x 2 dietpi dietpi 4096 márc 8 12.17 Pictures
drwxrwxr-x 2 dietpi dietpi 4096 márc 8 12.17 Video
And I can’t fix again the …
Can’t create test file /var/lib/mysql/DietPi.lower-test
update:
I used
root@DietPi:~# dietpi-software install 88
[ OK ] DietPi-Software | Initialised database
[ OK ] DietPi-Software | Reading databaseDietPi-Software
─────────────────────────────────────────────────────
Mode: Automated install[ INFO ] DietPi-Software | 88: MariaDB is already installed
[ INFO ] DietPi-Software | Use “dietpi-software reinstall 88” to force rerun of installation and configuration steps for MariaDB.
[ OK ] DietPi-Software | No changes applied for: MariaDB
root@DietPi:~# dietpi-software reinstall 88
[ OK ] DietPi-Software | Initialised database
[ OK ] DietPi-Software | Reading databaseDietPi-Software
─────────────────────────────────────────────────────
Mode: Automated reinstall[ OK ] DietPi-Software | Reinstalling MariaDB: Persistent cached file-per-table database server
[ OK ] DietPi-Software | DietPi-Userdata validation: /mnt/dietpi_userdataDietPi-Software
─────────────────────────────────────────────────────
Step: Checking for conflicts and missing inputsDietPi-Software
─────────────────────────────────────────────────────
Step: Checking for prerequisite software[ OK ] DietPi-Software | mkdir -p /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads /var/www /opt /usr/local/bin
[ OK ] DietPi-Software | chown dietpi:dietpi /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[ OK ] DietPi-Software | chmod 0775 /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[ SUB1 ] DietPi-Services > stop
[ OK ] DietPi-Services | stop : cron
[ OK ] DietPi-Services | stop : docker
[ OK ] DietPi-Services | stop : filebrowser
[ OK ] DietPi-Services | stop : deluge-web
[ OK ] DietPi-Services | stop : jellyfin
[ OK ] DietPi-Services | stop : deluged
[ OK ] DietPi-Services | stop : mariadb
[ INFO ] DietPi-Software | APT update, please wait…
Hit:1 Index of /debian bullseye InRelease
Hit:2 Index of /debian bullseye-updates InRelease
Hit:3 Index of linux/debian/ bullseye InRelease
Hit:4 https://deb.debian.org/debian-security bullseye-security InRelease
Hit:5 Index of /debian bullseye-backports InRelease
Hit:6 https://repo.jellyfin.org/debian bullseye InRelease
Reading package lists…
[ OK ] DietPi-Software | APT updateDietPi-Software
─────────────────────────────────────────────────────
Step: Installing MariaDB: Persistent cached file-per-table database server[ INFO ] DietPi-Software | Preparing database directory at: /mnt/dietpi_userdata/mysql
[ OK ] DietPi-Software | rm -f /mnt/dietpi_userdata/mysql
[ OK ] DietPi-Software | mkdir /mnt/dietpi_userdata/mysql
[ OK ] DietPi-Software | rm -Rf /var/lib/mysql
[ OK ] DietPi-Software | ln -s /mnt/dietpi_userdata/mysql /var/lib/mysql
[ INFO ] DietPi-Software | APT install mariadb-server, please wait…
Reading package lists…
Building dependency tree…
Reading state information…
mariadb-server is already the newest version (1:10.5.18-0+deb11u1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[ OK ] DietPi-Software | APT install mariadb-server
[ OK ] DietPi-Software | systemctl stop mariadb
[ INFO ] DietPi-Software | Removing obsolete SysV mysql service
[ OK ] DietPi-Software | update-rc.d mysql remove
stat: cannot statx ‘/mnt/dietpi_userdata/mysql/mysql’: No such file or directory
[ OK ] DietPi-Software | chown -R mysql:mysql /mnt/dietpi_userdata/mysql
[ OK ] DietPi-Software | mkdir -p /etc/systemd/system/mariadb.service.d
[ OK ] DietPi-Software | eval echo -e ‘[Unit]\nBefore=cron.service’ > /etc/systemd/system/mariadb.service.d/dietpi.confDietPi-Software
─────────────────────────────────────────────────────
Step: Finalising install[ OK ] DietPi-Software | systemctl daemon-reload
2023-04-28 11:39:59 [ INFO ] DietPi-RAMlog | Storing /var/log to /var/tmp/dietpi/logs/dietpi-ramlog_store…
2023-04-28 11:39:59 [ OK ] DietPi-RAMlog | Stored /var/log to /var/tmp/dietpi/logs/dietpi-ramlog_store.DietPi-Software
─────────────────────────────────────────────────────
Step: Install completed[ INFO ] DietPi-Software | Enabling installed services
[ OK ] DietPi-Software | systemctl --no-reload enable mariadb
[ OK ] DietPi-Survey | Sending survey data
[ SUB1 ] DietPi-Services > restart
[FAILED] DietPi-Services | restart : mariadb
[ OK ] DietPi-Services | restart : deluged
[ OK ] DietPi-Services | restart : jellyfin
[ OK ] DietPi-Services | restart : deluge-web
[ OK ] DietPi-Services | restart : filebrowser
[ OK ] DietPi-Services | restart : docker
[ OK ] DietPi-Services | restart : cron
after: can’t create error missing and privilege table back…
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: failed (Result: exit-code) since Fri 2023-04-28 11:40:01 BST; 37s ago
Docs: man:mariadbd(8)
systemd - MariaDB Knowledge Base
Process: 3719 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 3720 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 3722 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=cd /usr/bin/..; /usr/bin/galera_recovery; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 3769 ExecStart=/usr/sbin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
Main PID: 3769 (code=exited, status=1/FAILURE)
Status: “MariaDB server is down”
CPU: 147msápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [Note] InnoDB: 10.5.18 started; log sequence number 0; transaction id 7
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [Note] Plugin ‘FEEDBACK’ is disabled.
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Could not open mysql.plugin table: “Table ‘mysql.plugin’ doesn’t exist”. Some plugins may be not loaded
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Can’t open and lock privilege tables: Table ‘mysql.servers’ doesn’t exist
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [Note] Server socket created on IP: ‘127.0.0.1’.
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Fatal error: Can’t open and lock privilege tables: Table ‘mysql.db’ doesn’t exist
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Aborting
ápr 28 11:40:01 DietPi systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
ápr 28 11:40:01 DietPi systemd[1]: mariadb.service: Failed with result ‘exit-code’.
ápr 28 11:40:01 DietPi systemd[1]: Failed to start MariaDB 10.5.18 database server.
MariaDB runinig ![]()
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: active (running) since Fri 2023-04-28 11:50:01 BST; 3s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 4678 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 4679 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 4681 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 4748 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 4750 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 4728 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 20 (limit: 4536)
Memory: 72.9M
CPU: 438ms
CGroup: /system.slice/mariadb.service
└─4728 /usr/sbin/mariadbd
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] InnoDB: 10.5.18 started; log sequence number 44873; transaction id 21
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] InnoDB: Loading buffer pool(s) from /mnt/dietpi_userdata/mysql/ib_buffer_pool
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Plugin 'FEEDBACK' is disabled.
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] InnoDB: Buffer pool(s) load completed at 230428 11:50:01
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Server socket created on IP: '127.0.0.1'.
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Reading of all Master_info entries succeeded
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Added new Master_info '' to hash table
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] /usr/sbin/mariadbd: ready for connections.
ápr 28 11:50:01 DietPi mariadbd[4728]: Version: '10.5.18-MariaDB-0+deb11u1' socket: '/run/mysqld/mysqld.sock' port: 3306 Debian 11
ápr 28 11:50:01 DietPi systemd[1]: Started MariaDB 10.5.18 database server.
root@DietPi:~#
Solve the issue:
Code:
mysqld --initialize
mysql_install_db
systemctl restart mariadb
mysql_upgrade --force
systemctl restart mariadb
Terminal copy:
root@DietPi:~# mysqld --initialize
2023-04-28 11:46:54 0 [Note] mysqld (mysqld 10.5.18-MariaDB-0+deb11u1) starting as process 4397 ...
2023-04-28 11:46:54 0 [Note] InnoDB: Uses event mutexes
2023-04-28 11:46:54 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2023-04-28 11:46:54 0 [Note] InnoDB: Number of pools: 1
2023-04-28 11:46:54 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
2023-04-28 11:46:54 0 [Note] InnoDB: Using Linux native AIO
2023-04-28 11:46:54 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728
2023-04-28 11:46:54 0 [Note] InnoDB: Completed initialization of buffer pool
2023-04-28 11:46:54 0 [Note] InnoDB: 128 rollback segments are active.
2023-04-28 11:46:54 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2023-04-28 11:46:54 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2023-04-28 11:46:54 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
2023-04-28 11:46:54 0 [Note] InnoDB: 10.5.18 started; log sequence number 35040; transaction id 8
2023-04-28 11:46:54 0 [Note] InnoDB: Loading buffer pool(s) from /mnt/dietpi_userdata/mysql/ib_buffer_pool
2023-04-28 11:46:54 0 [Note] Plugin 'FEEDBACK' is disabled.
2023-04-28 11:46:54 0 [ERROR] Could not open mysql.plugin table: "Table 'mysql.plugin' doesn't exist". Some plugins may be not loaded
2023-04-28 11:46:54 0 [ERROR] mysqld: unknown option '--initialize'
2023-04-28 11:46:54 0 [ERROR] Aborting
root@DietPi:~# mysql_install_db
Installing MariaDB/MySQL system tables in '/var/lib/mysql' ...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
Two all-privilege accounts were created.
One is root@localhost, it has no password, but you need to
be system 'root' user to connect. Use, for example, sudo mysql
The second is mysql@localhost, it has no password either, but
you need to be the system 'mysql' user to connect.
After connecting you can set the password, if you would need to be
able to connect as any of these users with a password and without sudo
See the MariaDB Knowledgebase at https://mariadb.com/kb
You can start the MariaDB daemon with:
cd '/usr' ; /usr/bin/mysqld_safe --datadir='/var/lib/mysql'
You can test the MariaDB daemon with mysql-test-run.pl
cd '/usr/mysql-test' ; perl mysql-test-run.pl
Please report any problems at https://mariadb.org/jira
The latest information about MariaDB is available at https://mariadb.org/.
Consider joining MariaDB's strong and vibrant community:
https://mariadb.org/get-involved/
root@DietPi:~# cd '/usr/mysql-test' ; perl mysql-test-run.pl
-bash: cd: /usr/mysql-test: Nincs ilyen fájl vagy könyvtár
Can't open perl script "mysql-test-run.pl": Nincs ilyen fájl vagy könyvtár
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: failed (Result: exit-code) since Fri 2023-04-28 11:40:01 BST; 9min ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 3719 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 3720 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 3722 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 3769 ExecStart=/usr/sbin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
Main PID: 3769 (code=exited, status=1/FAILURE)
Status: "MariaDB server is down"
CPU: 147ms
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [Note] InnoDB: 10.5.18 started; log sequence number 0; transaction id 7
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [Note] Plugin 'FEEDBACK' is disabled.
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Could not open mysql.plugin table: "Table 'mysql.plugin' doesn't exist". Some plugins may be not loaded
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [Note] Server socket created on IP: '127.0.0.1'.
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.db' doesn't exist
ápr 28 11:40:01 DietPi mariadbd[3769]: 2023-04-28 11:40:01 0 [ERROR] Aborting
ápr 28 11:40:01 DietPi systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
ápr 28 11:40:01 DietPi systemd[1]: mariadb.service: Failed with result 'exit-code'.
ápr 28 11:40:01 DietPi systemd[1]: Failed to start MariaDB 10.5.18 database server.
root@DietPi:~# systemctl restart mariadb
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: active (running) since Fri 2023-04-28 11:49:18 BST; 2s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 4513 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 4514 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 4516 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 4582 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 4584 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 4563 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 19 (limit: 4536)
Memory: 70.3M
CPU: 428ms
CGroup: /system.slice/mariadb.service
└─4563 /usr/sbin/mariadbd
ápr 28 11:49:18 DietPi mariadbd[4563]: 2023-04-28 11:49:18 0 [Note] Reading of all Master_info entries succeeded
ápr 28 11:49:18 DietPi mariadbd[4563]: 2023-04-28 11:49:18 0 [Note] Added new Master_info '' to hash table
ápr 28 11:49:18 DietPi mariadbd[4563]: 2023-04-28 11:49:18 0 [Note] /usr/sbin/mariadbd: ready for connections.
ápr 28 11:49:18 DietPi mariadbd[4563]: Version: '10.5.18-MariaDB-0+deb11u1' socket: '/run/mysqld/mysqld.sock' port: 3306 Debian 11
ápr 28 11:49:18 DietPi systemd[1]: Started MariaDB 10.5.18 database server.
ápr 28 11:49:18 DietPi /etc/mysql/debian-start[4589]: Looking for 'mariadb' as: /usr/bin/mariadb
ápr 28 11:49:18 DietPi /etc/mysql/debian-start[4589]: Looking for 'mariadb-check' as: /usr/bin/mariadb-check
ápr 28 11:49:18 DietPi /etc/mysql/debian-start[4589]: This installation of MariaDB is already upgraded to 10.5.18-MariaDB.
ápr 28 11:49:18 DietPi /etc/mysql/debian-start[4589]: There is no need to run mysql_upgrade again for 10.5.18-MariaDB.
ápr 28 11:49:18 DietPi /etc/mysql/debian-start[4589]: You can use --force if you still want to run mysql_upgrade
root@DietPi:~# mysql_upgrade
This installation of MariaDB is already upgraded to 10.5.18-MariaDB.
There is no need to run mysql_upgrade again for 10.5.18-MariaDB.
You can use --force if you still want to run mysql_upgrade
root@DietPi:~# mysql_upgrade --force
Phase 1/7: Checking and upgrading mysql database
Processing databases
mysql
mysql.column_stats OK
mysql.columns_priv OK
mysql.db OK
mysql.event OK
mysql.func OK
mysql.global_priv OK
mysql.gtid_slave_pos OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.index_stats OK
mysql.innodb_index_stats OK
mysql.innodb_table_stats OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.proxies_priv OK
mysql.roles_mapping OK
mysql.servers OK
mysql.table_stats OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.transaction_registry OK
Phase 2/7: Installing used storage engines... Skipped
Phase 3/7: Fixing views
mysql.user OK
Phase 4/7: Running 'mysql_fix_privilege_tables'
Phase 5/7: Fixing table and database names
Phase 6/7: Checking and upgrading tables
Processing databases
information_schema
performance_schema
test
Phase 7/7: Running 'FLUSH PRIVILEGES'
OK
root@DietPi:~# systemctl restart mariadb
root@DietPi:~# systemctl status mariadb
● mariadb.service - MariaDB 10.5.18 database server
Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dietpi.conf
Active: active (running) since Fri 2023-04-28 11:50:01 BST; 3s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 4678 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 4679 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 4681 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 4748 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 4750 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 4728 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 20 (limit: 4536)
Memory: 72.9M
CPU: 438ms
CGroup: /system.slice/mariadb.service
└─4728 /usr/sbin/mariadbd
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] InnoDB: 10.5.18 started; log sequence number 44873; transaction id 21
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] InnoDB: Loading buffer pool(s) from /mnt/dietpi_userdata/mysql/ib_buffer_pool
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Plugin 'FEEDBACK' is disabled.
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] InnoDB: Buffer pool(s) load completed at 230428 11:50:01
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Server socket created on IP: '127.0.0.1'.
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Reading of all Master_info entries succeeded
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] Added new Master_info '' to hash table
ápr 28 11:50:01 DietPi mariadbd[4728]: 2023-04-28 11:50:01 0 [Note] /usr/sbin/mariadbd: ready for connections.
ápr 28 11:50:01 DietPi mariadbd[4728]: Version: '10.5.18-MariaDB-0+deb11u1' socket: '/run/mysqld/mysqld.sock' port: 3306 Debian 11
ápr 28 11:50:01 DietPi systemd[1]: Started MariaDB 10.5.18 database server.
After that I tried install Nextcloud and I got this error: (sensitive date replaced with xxxxxxxxxx)
Nextcloud ncc install │
│ - Command: ncc maintenance:install --no-interaction --database=mysql │
│ --database-name=nextcloud --database-user=tmp_root │
│ --database-pass=xxxxxxxxxx --admin-user=admin │
│ --admin-pass=xxxxxxxxx --data-dir=/mnt/HDD/nextcloud_data │
│ - Exit code: 1 │
│ - DietPi version: v8.16.2 (MichaIng/master) | HW_MODEL: 21 | HW_ARCH: 10 | │
│ DISTRO: 6 │
│ - Error log:
Error:
Cannot create or write into the data directory /mnt/HDD/nextcloud_data
But the premission
Directory: /mnt/HDD/nextcloud_data │
│ - R/W/Exec permissions : drwxrwxrwx (777) │
│ - User/Group ownership : www-data:www-data
Do you have any idea?
can you share following
ls -la /mnt/HDD/nextcloud_data
lsblk -o name,fstype,label,size,ro,type,mountpoint,partuuid,uuid
root@DietPi:~# ls -la /mnt/HDD/nextcloud_data
lsblk -o name,fstype,label,size,ro,type,mountpoint,partuuid,uuid
összesen 8
drwxrwxrwx 2 www-data www-data 4096 ápr 28 11.58 .
drwxrwxrwx 7 dietpi users 4096 ápr 28 11.58 …
NAME FSTYPE LABEL SIZE RO TYPE MOUNTPOINT PARTUUID UUID
sda 931,5G 0 disk
└─sda1
ntfs Maxtor
931,5G 0 part 2b8809d0-01 66B6C20FB6C1DFA3
sdb 1,8T 0 disk
└─sdb1
ext4 PrimaryHDD
1,8T 0 part /mnt/HDD 29515f11-2e3c-4280-b915-98df4371948c fbe2a122-ba2d-43f4-a69d-aef0422c0fc1
mmcblk0
│ 57G 0 disk
├─mmcblk0p1
│ vfat 64M 0 part /boot/efi 5efa9c68-b874-4fa5-8cc7-455020134246 E6ED-861F
└─mmcblk0p2
ext4 56,9G 0 part / fe45e2f5-f6da-48c2-8418-aa662c252d1b c84d3b07-a6cc-4192-9b77-a7f4cbb61993
mmcblk0boot0
4M 1 disk
mmcblk0boot1
4M 1 disk
root@DietPi:~#
your system is really strange. Out of curiosity, can you add user www-data to the root user group. However, adding all user to root group is not really the savest workaround. Especially if you plan to connect to your system from internet. ![]()
after i used usermod, issue solved
usermod -a -G root www-data
usermod -a -G dietpi www-data
interesting but a security nightmare as giving all application user root permission is against every security concept. ![]()
@MichaIng fyi
Thanks for your support, finally everithing works.
But this premission thing very strange…
What are the permissions of the parent directories?
ls -dl / /mnt /mnt/HDD
Probably one of them is not executable (browse-able) for “others”.
The www-data has only dietpi and root group permissions now, not actual root user permissions, but problematic enough. But much worse IMO is that everything has unlimited access to raw Nextcloud data now.