paeddi
July 16, 2020, 5:35pm
1
Hi there,
I’m trying to fir the warning for MySQL 4-byte support:
I’m following these instructions:
https://docs.nextcloud.com/server/15/admin_manual/configuration_database/mysql_4byte_support.html
My settings in /etc/mysql/mariadb.conf.d/50-server.cnf are:
With this query i get the following results:
SELECT NAME, SPACE, FILE_FORMAT FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME like "nextcloud%";
But when I try to generate the SQL commands I get no result:
USE INFORMATION_SCHEMA;
SELECT CONCAT(“ALTER TABLE ", TABLE_SCHEMA,"
.", TABLE_NAME, "
ROW_FORMAT=DYNAMIC;”) AS MySQLCMD FROM TABLES WHERE TABLE_SCHEMA = “nextcloud”;
Do you have any idea what I’m doing wrong?
Greetings
Patrick
Edit: I forgot to mention that my nextcloud instance is hosted on an raspberry pi.
paeddi
July 16, 2020, 6:42pm
3
Ah, sorry.
Forgot to mention that it’s a local Rapsberry Pi.
I believe you have different quotes around ALTER TABLE (German keyboard?)
“ALTER TABLE "
Same at the end of DYNAMIC;
Copy-paste this
SELECT CONCAT("ALTER TABLE ", TABLE_SCHEMA,".", TABLE_NAME, " ROW_FORMAT=DYNAMIC;") AS MySQLCMD FROM TABLES WHERE TABLE_SCHEMA = "nextcloud";
paeddi
July 16, 2020, 8:13pm
5
Yes, I’m using a german keybaord.
But even with your suggestion it doesn’t work.
paeddi
July 16, 2020, 8:24pm
6
Ok, I guess I made a step forward.
Obviously the error was that my tables are called nextcloud_db, not nextcloud.
The command should be:
SELECT CONCAT(“ALTER TABLE “, TABLE_SCHEMA,”.”, TABLE_NAME, " ROW_FORMAT=DYNAMIC;") AS MYSQLCMD FROM TABLES WHERE TABLE_SCHEMA = “nextcloud_db”;
Then I get this response:
paeddi
July 16, 2020, 8:57pm
7
Sorry again. I thought my problem is solved.
But now I ran in the next one.
All my tables are migrated to Barracuda but nextcloud still reports the problem with 4-byte support:
Am I missing something after migrating the database?
paeddi
July 16, 2020, 9:26pm
9
I already restarted the raspi.
Can this be of help (additional lines under [mysqld]?
opened 03:19PM - 12 Jun 19 UTC
closed 03:31PM - 12 Jun 19 UTC
Steps to reproduce
Was using nextCloud 16
Tried to enable Mariadb 4-byte support by following:
https://docs.nextcloud.com/server/16/admin_manual/configuration_database/mysql_4byte_support.html
Everything was working fine, but I faced problem at
$...
0. Needs triage
bug
paeddi
July 17, 2020, 4:34am
11
When adding these lines
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
transaction_isolation = READ-COMMITTED
binlog_format = ROW
I still get the 4-byte support warning
EDIT:
Next thing I tried was to fix the database with these commands:
sudo -u www-data php occ maintenance:mode --on
sudo -u www-data php occ upgrade
sudo -u www-data php occ db:add-missing-indices
sudo -u www-data php occ db:convert-filecache-bigint
sudo -u www-data php occ maintenance:mimetype:update-js
sudo -u www-data php occ maintenance:mimetype:update-db
sudo -u www-data php occ maintenance:theme:update
sudo -u www-data php occ maintenance:update:htaccess
sudo -u www-data php occ maintenance:repair
sudo -u www-data php occ maintenance:mode --off
But that didn’t work either.
I think I give up until I have another idea.
Nextcloud is working anyway…
EDIT:
Ok one last try.
With this instruction: Enabling MySQL 4-byte support for Nextcloud on Ubuntu 18.04 – Allerstorfer.at
I made these additional steps:
MariaDB [(none)]> ALTER DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
and
sudo -u www-data php occ config:system:set mysql.utf8mb4 --type boolean --value=“true”
and
sudo -u www-data php occ maintenance:repair
and that fixed it at the end!
Gjimi
July 17, 2020, 7:50am
12
had tried everything, I think this problem is insoluble, at least for me it was so, just ignore the message.
paeddi
July 17, 2020, 8:22am
13
Sorry, I was editing my post and didn’t see that you have answered.
My problem was solved with the additional steps.