Connection refused after upgrade #3802

Closed
opened 2026-02-05 07:31:03 +03:00 by OVERLORD · 4 comments
Owner

Originally created by @raph-za on GitHub (May 16, 2023).

Attempted Debugging

  • I have read the debugging page

Searched GitHub Issues

  • I have searched GitHub for the issue.

Describe the Scenario

Bookstack working for few years, recently installed watchtower and it upgraded Bookstack
not container is not accessible. no changes made to configurations. just did not work the next day

Waiting for DB to be available
   Illuminate\Database\QueryException 
  SQLSTATE[HY000] [2002] Connection refused (SQL: select * from information_schema.tables where table_schema = bookstackapp and table_name = migrations and table_type = 'BASE TABLE')
  at /app/www/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760
    756▕         // If an exception occurs when attempting to run a query, we'll format the error
    757▕         // message to include the bindings with SQL, which will make this exception a
    758▕         // lot more helpful to the developer instead of just the database's errors.
    759▕         catch (Exception $e) {
  ➜ 760▕             throw new QueryException(
    761▕                 $query, $this->prepareBindings($bindings), $e
    762▕             );
    763▕         }
    764▕     }
      +39 vendor frames 
  40  /app/www/artisan:37
      Illuminate\Foundation\Console\Kernel::handle()

confirmed passwords are correct.
I can ping dookstack_DB
When viewing DB logs i see

Exact BookStack Version

v23.05.1-ls79

Log Content

when viewing bookstack_db container log files

cat: /var/run/mysqld/mysqld.pid: No such file or directory Warning: World-writable config file '/etc/my.cnf.d/custom.cnf' is ignored Warning: World-writable config file '/etc/my.cnf.d/custom.cnf' is ignored 230516 13:20:19 mysqld_safe Logging to '/config/databases/a43f637c9e2d.err'. 230516 13:20:19 mysqld_safe Starting mariadbd daemon with databases from /config/databases Caught SIGTERM signal!

when viewing a43f637c9e2d.err

26071 2023-05-16 17:18:38 0 [Note] InnoDB: Compressed tables use zlib 1.2.13 26072 2023-05-16 17:18:38 0 [Note] InnoDB: Number of pools: 1 26073 2023-05-16 17:18:38 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions 26074 2023-05-16 17:18:38 0 [Note] InnoDB: Using Linux native AIO 26075 2023-05-16 17:18:38 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728 26076 2023-05-16 17:18:38 0 [Note] InnoDB: Completed initialization of buffer pool 26077 2023-05-16 17:18:39 0 [ERROR] InnoDB: Upgrade after a crash is not supported. The redo log was created with MariaDB 10.4.17. You must start up and shut down MariaDB 10.4 or earlier on the data directory. 26078 2023-05-16 17:18:39 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error 26079 2023-05-16 17:18:39 0 [Note] InnoDB: Starting shutdown... 26080 2023-05-16 17:18:39 0 [ERROR] Plugin 'InnoDB' init function returned error. 26081 2023-05-16 17:18:39 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 26082 2023-05-16 17:18:39 0 [Note] Plugin 'FEEDBACK' is disabled. 26083 2023-05-16 17:18:39 0 [ERROR] Unknown/unsupported storage engine: InnoDB 26084 2023-05-16 17:18:39 0 [ERROR] Aborting 26085 230516 17:18:40 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 26086 230516 17:18:40 mysqld_safe Starting mariadbd daemon with databases from /config/databases 26087 2023-05-16 17:18:40 0 [Note] Starting MariaDB 10.6.13-MariaDB source revision a24f2bb50ba4a0dd4127455f7fcdfed584937f36 as process 22276 26088 Warning: World-writable config file '/etc/my.cnf.d/custom.cnf' is ignored

PHP Version

No response

Hosting Environment

synology NAS, running docker and using portainer to manage containers

Originally created by @raph-za on GitHub (May 16, 2023). ### Attempted Debugging - [ ] I have read the debugging page ### Searched GitHub Issues - [X] I have searched GitHub for the issue. ### Describe the Scenario Bookstack working for few years, recently installed watchtower and it upgraded Bookstack not container is not accessible. no changes made to configurations. just did not work the next day ``` Waiting for DB to be available Illuminate\Database\QueryException SQLSTATE[HY000] [2002] Connection refused (SQL: select * from information_schema.tables where table_schema = bookstackapp and table_name = migrations and table_type = 'BASE TABLE') at /app/www/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760 756▕ // If an exception occurs when attempting to run a query, we'll format the error 757▕ // message to include the bindings with SQL, which will make this exception a 758▕ // lot more helpful to the developer instead of just the database's errors. 759▕ catch (Exception $e) { ➜ 760▕ throw new QueryException( 761▕ $query, $this->prepareBindings($bindings), $e 762▕ ); 763▕ } 764▕ } +39 vendor frames 40 /app/www/artisan:37 Illuminate\Foundation\Console\Kernel::handle() ``` confirmed passwords are correct. I can ping dookstack_DB When viewing DB logs i see ### Exact BookStack Version v23.05.1-ls79 ### Log Content when viewing bookstack_db container log files `cat: /var/run/mysqld/mysqld.pid: No such file or directory Warning: World-writable config file '/etc/my.cnf.d/custom.cnf' is ignored Warning: World-writable config file '/etc/my.cnf.d/custom.cnf' is ignored 230516 13:20:19 mysqld_safe Logging to '/config/databases/a43f637c9e2d.err'. 230516 13:20:19 mysqld_safe Starting mariadbd daemon with databases from /config/databases Caught SIGTERM signal!` when viewing a43f637c9e2d.err ` 26071 2023-05-16 17:18:38 0 [Note] InnoDB: Compressed tables use zlib 1.2.13 26072 2023-05-16 17:18:38 0 [Note] InnoDB: Number of pools: 1 26073 2023-05-16 17:18:38 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions 26074 2023-05-16 17:18:38 0 [Note] InnoDB: Using Linux native AIO 26075 2023-05-16 17:18:38 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728 26076 2023-05-16 17:18:38 0 [Note] InnoDB: Completed initialization of buffer pool 26077 2023-05-16 17:18:39 0 [ERROR] InnoDB: Upgrade after a crash is not supported. The redo log was created with MariaDB 10.4.17. You must start up and shut down MariaDB 10.4 or earlier on the data directory. 26078 2023-05-16 17:18:39 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error 26079 2023-05-16 17:18:39 0 [Note] InnoDB: Starting shutdown... 26080 2023-05-16 17:18:39 0 [ERROR] Plugin 'InnoDB' init function returned error. 26081 2023-05-16 17:18:39 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 26082 2023-05-16 17:18:39 0 [Note] Plugin 'FEEDBACK' is disabled. 26083 2023-05-16 17:18:39 0 [ERROR] Unknown/unsupported storage engine: InnoDB 26084 2023-05-16 17:18:39 0 [ERROR] Aborting 26085 230516 17:18:40 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 26086 230516 17:18:40 mysqld_safe Starting mariadbd daemon with databases from /config/databases 26087 2023-05-16 17:18:40 0 [Note] Starting MariaDB 10.6.13-MariaDB source revision a24f2bb50ba4a0dd4127455f7fcdfed584937f36 as process 22276 26088 Warning: World-writable config file '/etc/my.cnf.d/custom.cnf' is ignored` ### PHP Version _No response_ ### Hosting Environment synology NAS, running docker and using portainer to manage containers
OVERLORD added the 🐕 Support label 2026-02-05 07:31:03 +03:00
Author
Owner

@ssddanbrown commented on GitHub (May 16, 2023):

I'd advise not to use watchtower to perform updates, I commonly see issues due to this.

Looks like this isn't anything specific to BookStack, but a case of database data getting in a bad state. This is the most relevant line from your logs:

[ERROR] InnoDB: Upgrade after a crash is not supported. The redo log was created with MariaDB 10.4.17. You must start up and shut down MariaDB 10.4 or earlier on the data directory.

So within your docker setup, set the database container to use a 10.4-based image, then start the database up using that and see if it gets things working again.

Note: Before you do anything take backups of all volume data.

@ssddanbrown commented on GitHub (May 16, 2023): I'd advise not to use watchtower to perform updates, I commonly see issues due to this. Looks like this isn't anything specific to BookStack, but a case of database data getting in a bad state. This is the most relevant line from your logs: > [ERROR] InnoDB: Upgrade after a crash is not supported. The redo log was created with MariaDB 10.4.17. You must start up and shut down MariaDB 10.4 or earlier on the data directory. So within your docker setup, set the database container to use a 10.4-based image, then start the database up using that and see if it gets things working again. Note: Before you do anything take backups of all volume data.
Author
Owner

@raph-za commented on GitHub (May 16, 2023):

yeh i now come to realise watchtower is fancy but not worth the trouble.

i manage to install mariadb:110.4.18mariabionic-ls18

my DB errors went away sort of

on my bookstack log

using keys found in /config/keys App Key found - setting variable for seds Running config - DB_HOST set Waiting for DB to be available Illuminate\Database\QueryException _**SQLSTATE[HY000] [1045] Access denied for user 'bookstack'@'bookstack.bookstack_default' (using password: YES) (SQL: select * from information_schema.tables where table_schema = bookstackapp and table_name = migrations and table_type = 'BASE TABLE')**_ at /app/www/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760 756▕ // If an exception occurs when attempting to run a query, we'll format the error 757▕ // message to include the bindings with SQL, which will make this exception a 758▕ // lot more helpful to the developer instead of just the database's errors. 759▕ catch (Exception $e) { ➜ 760▕ throw new QueryException( 761▕ $query, $this->prepareBindings($bindings), $e 762▕ ); 763▕ } 764▕ } +36 vendor frames 37 /app/www/artisan:37 Illuminate\Foundation\Console\Kernel::handle()

and the bookstack_db log

Screenshot 2023-05-16 212018

i have checked my passwords are the same and did not make any changes to them previously.
copy of my env.

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PS1=$(whoami)@$(hostname):$(pwd)$
HOME=/root
TERM=xterm
S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
S6_VERBOSITY=1
S6_STAGE2_HOOK=/docker-mods
LSIO_FIRST_PARTY=true
PUID=1026
PGID=100
APP_URL=http://192.168.0.123:6875
DB_HOST=bookstack_db
DB_USER=bookstack
DB_PASS=yourdbpass
DB_DATABASE=bookstackapp

not the most elegant of passwords i know c",)

@raph-za commented on GitHub (May 16, 2023): yeh i now come to realise watchtower is fancy but not worth the trouble. i manage to install mariadb:110.4.18mariabionic-ls18 my DB errors went away sort of on my bookstack log `using keys found in /config/keys App Key found - setting variable for seds Running config - DB_HOST set Waiting for DB to be available Illuminate\Database\QueryException _**SQLSTATE[HY000] [1045] Access denied for user 'bookstack'@'bookstack.bookstack_default' (using password: YES) (SQL: select * from information_schema.tables where table_schema = bookstackapp and table_name = migrations and table_type = 'BASE TABLE')**_ at /app/www/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760 756▕ // If an exception occurs when attempting to run a query, we'll format the error 757▕ // message to include the bindings with SQL, which will make this exception a 758▕ // lot more helpful to the developer instead of just the database's errors. 759▕ catch (Exception $e) { ➜ 760▕ throw new QueryException( 761▕ $query, $this->prepareBindings($bindings), $e 762▕ ); 763▕ } 764▕ } +36 vendor frames 37 /app/www/artisan:37 Illuminate\Foundation\Console\Kernel::handle() ` and the bookstack_db log <img width="469" alt="Screenshot 2023-05-16 212018" src="https://github.com/BookStackApp/BookStack/assets/66212733/0efebb25-23e6-4b7c-9809-c97ed97d0d5e"> i have checked my passwords are the same and did not make any changes to them previously. copy of my env. PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PS1=$(whoami)@$(hostname):$(pwd)\$ HOME=/root TERM=xterm S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 S6_VERBOSITY=1 S6_STAGE2_HOOK=/docker-mods LSIO_FIRST_PARTY=true PUID=1026 PGID=100 APP_URL=http://192.168.0.123:6875 DB_HOST=bookstack_db DB_USER=bookstack DB_PASS=yourdbpass DB_DATABASE=bookstackapp not the most elegant of passwords i know c",)
Author
Owner

@ssddanbrown commented on GitHub (May 18, 2023):

If you updated from a version a couple of months ago, it's possible you were bitten by the issue as per https://github.com/BookStackApp/BookStack/issues/3940, Where lsio made changes to how passwords are handled (Although I thought this was only for passwords with special characters) sometimes requiring a reset of passwords in the database. Worth reading through that linked thread.

@ssddanbrown commented on GitHub (May 18, 2023): If you updated from a version a couple of months ago, it's possible you were bitten by the issue as per https://github.com/BookStackApp/BookStack/issues/3940, Where lsio made changes to how passwords are handled (Although I thought this was only for passwords with special characters) sometimes requiring a reset of passwords in the database. Worth reading through that linked thread.
Author
Owner

@ssddanbrown commented on GitHub (May 30, 2023):

Since there's been no follow-up I'm going to close this. If the issue remains and is something you still require to be fixed respond to my previous comment and this can then be re-opened.

@ssddanbrown commented on GitHub (May 30, 2023): Since there's been no follow-up I'm going to close this. If the issue remains and is something you still require to be fixed respond to my previous comment and this can then be re-opened.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#3802