Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] MariaDB won't start. "mysqld got signal 4;"
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Networking & Security
View previous topic :: View next topic  
Author Message
autofyrsto
n00b
n00b


Joined: 16 Aug 2014
Posts: 11

PostPosted: Fri Mar 26, 2021 7:03 pm    Post subject: MariaDB won't start. "mysqld got signal 4;" Reply with quote

Hi. My MariaDB seems to have broken after a recent @world update on a hobby web server. The server is running Gentoo (stable) x86. The update included a gcc upgrade to 10.2.0 and a MariaDB upgrade to 10.5.9. A few things were initially broke on upon this update, including portage and dhcpcd. I believe I've attributed these initial breakages to SELinux, which I've set to "permissive" until I've solved all other problems. In the meantime, I rebuilt the system with "emerge -qae @world".

After rebuilding the system, MariaDB will not start. I've tried many remedies suggested online, including:
- downgrading MariaDB and running mysql_upgrade,
- ensuring permissions of /var/lib/mysql are 750 with user:group set to mysql:mysql,
- renaming ibdata1 and ib_logfile* and restarting MariaDB,
- renaming /var/lib/mysql and running "emerge --config dev-db/mariadb",
- unmerging dev-db/mariadb and emerging dev-db/mysql, and
- unmerging and emerging dev-db/mariadb with CONFIG_PROTECT="-*"

None of the above was able to get MariaDB up and running. The output when starting MariaDB is:
Code:
# rc-service mysql start
 * Checking mysqld configuration for mysql ...                                                                                                        [ ok ]
 * Starting mysql ...
 * start-stop-daemon: fopen `/var/run/mysqld/mariadb.pid': No such file or directory
 * Detaching to start `/usr/sbin/mysqld' ...
 *   start-stop-daemon: /usr/sbin/mysqld died                                                                                                         [ !! ]
 * ERROR: mysql failed to start

The most recent error log at /var/log/mysql/mysqld.err shows:
Code:
2021-03-26 14:15:57 0 [Warning] No argument was provided to --log-bin and neither --log-basename or --log-bin-index where used;  This may cause repliction to break when this server acts as a master and has its hostname changed! Please use '--log-basename=mail' or '--log-bin=mariadb-bin' to avoid this problem.
2021-03-26 14:15:57 0 [Note] InnoDB: The first innodb_system data file 'ibdata1' did not exist. A new tablespace will be created!
2021-03-26 14:15:57 0 [Note] InnoDB: Uses event mutexes
2021-03-26 14:15:57 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2021-03-26 14:15:57 0 [Note] InnoDB: Number of pools: 1
2021-03-26 14:15:57 0 [Note] InnoDB: Using generic crc32 instructions
2021-03-26 14:15:57 0 [Note] mysqld: O_TMPFILE is not supported on /tmp/ (disabling future attempts)
2021-03-26 14:15:57 0 [Note] InnoDB: Using Linux native AIO
2021-03-26 14:15:57 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728
2021-03-26 14:15:57 0 [Note] InnoDB: Completed initialization of buffer pool
2021-03-26 14:15:57 0 [Note] InnoDB: Setting file './ibdata1' size to 12 MB. Physically writing the file full; Please wait ...
2021-03-26 14:15:57 0 [Note] InnoDB: File './ibdata1' size is now 12 MB.
2021-03-26 14:15:57 0 [Note] InnoDB: Setting log file ./ib_logfile101 size to 100663296 bytes
2021-03-26 14:15:57 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
210326 14:15:57 [ERROR] mysqld got signal 4 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.

To report this bug, see https://mariadb.com/kb/en/reporting-bugs

We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.

Server version: 10.5.9-MariaDB-log
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=0
max_threads=153
thread_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 466302 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x0 thread_stack 0x49000
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x1143ebe]
/usr/sbin/mysqld(handle_fatal_signal+0x3b2)[0xbbc6a2]
linux-gate.so.1(__kernel_sigreturn+0x0)[0xb7f5aa78]
/usr/sbin/mysqld(+0xc66e20)[0x115ae20]
/usr/sbin/mysqld(+0xa3afca)[0xf2efca]
/usr/sbin/mysqld(+0x32c598)[0x820598]
/usr/sbin/mysqld(+0x32d63a)[0x82163a]
/usr/sbin/mysqld(+0x9ec04c)[0xee004c]
/usr/sbin/mysqld(_Z24ha_initialize_handlertonP13st_plugin_int+0x7d)[0xbbf33d]
/usr/sbin/mysqld(+0x48ae7c)[0x97ee7c]
/usr/sbin/mysqld(_Z11plugin_initPiPPci+0xb04)[0x980384]
/usr/sbin/mysqld(+0x396126)[0x88a126]
/usr/sbin/mysqld(_Z11mysqld_mainiPPc+0x290a)[0x88f7fa]
/usr/sbin/mysqld(main+0x27)[0x850d77]
/lib/libc.so.6(__libc_start_main+0x11a)[0xb7576f7a]
/usr/sbin/mysqld(_start+0x31)[0x882311]
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file...
Working directory at /var/lib/mysql
Resource Limits:
Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes
Max data size             unlimited            unlimited            bytes
Max stack size            8388608              unlimited            bytes
Max core file size        0                    unlimited            bytes
Max resident set          unlimited            unlimited            bytes
Max processes             16021                16021                processes

I visited https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/, but it seems a little above my expertise. I was wondering if anyone on the forum can identify the issue here. In the best case scenario MariaDB would start again with all of my data preserved, but I'd be interested to start MariaDB again in any condition, even if I have to rebuild the data. Is this an issue that I should report to https://mariadb.com/kb/en/reporting-bugs? FWIW, my main computer is running Gentoo ~amd64, and it did not seem to have any recent problems with MariaDB.

Thanks in advance for any assistance.


Last edited by autofyrsto on Sun Mar 28, 2021 10:09 pm; edited 1 time in total
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Fri Mar 26, 2021 7:52 pm    Post subject: Reply with quote

Hi
p;ease move
/etc/mysql/mariadb.d/50-distro-server.cnf ###and
/etc/init.d/mysql

to another location and reemerge mariadb.

Also
emerge --info mariadb
chown mysql. /var/run/mysqld
chmod 755 /var/run/mysqld
grep mysql /etc/passwd
_________________
:)
Back to top
View user's profile Send private message
trilithium
n00b
n00b


Joined: 18 Nov 2019
Posts: 43

PostPosted: Fri Mar 26, 2021 11:52 pm    Post subject: Re: MariaDB won't start. "mysqld got signal 4;" Reply with quote

Signal 4 is SIGILL; "Illegal instruction". You will get this error if GCC has been configured to generate code not supported by your CPU. Make sure optimization flags in /etc/portage/make.conf matches what the CPU is capable of.
Back to top
View user's profile Send private message
autofyrsto
n00b
n00b


Joined: 16 Aug 2014
Posts: 11

PostPosted: Sat Mar 27, 2021 3:19 am    Post subject: Reply with quote

Thanks for the suggestions. I re-named /etc/mysql/mariadb.d/50-distro-server.cnf and /etc/init.d/mysql and then re-emerged dev-db/mariadb. The latter file, /etc/init.d/mysql, was apparently not replaced when dev-db/mariadb was re-emerged. I had to restore the original file to attempt restarting MariaDB, but the output was the same as above, with "ERROR: mysql failed to start". After renaming, /var/log/mysql/mysqld.err looks like this:
/var/log/mysql/mysqld.err:
2021-03-26 21:37:25 0 [Warning] No argument was provided to --log-bin and neither --log-basename or --log-bin-index where used;  This may cause repliction to break when this server acts as a master and has its hostname changed! Please use '--log-basename=mail' or '--log-bin=mariadb-bin' to avoid this problem.
2021-03-26 21:37:25 0 [Note] InnoDB: Uses event mutexes
2021-03-26 21:37:25 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2021-03-26 21:37:25 0 [Note] InnoDB: Number of pools: 1
2021-03-26 21:37:25 0 [Note] InnoDB: Using generic crc32 instructions
2021-03-26 21:37:25 0 [Note] mysqld: O_TMPFILE is not supported on /tmp/ (disabling future attempts)
2021-03-26 21:37:25 0 [Note] InnoDB: Using Linux native AIO
2021-03-26 21:37:25 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728
2021-03-26 21:37:25 0 [Note] InnoDB: Completed initialization of buffer pool
2021-03-26 21:37:25 0 [Note] InnoDB: Header page consists of zero bytes in datafile: ./ibdata1, Space ID:0, Flags: 0
2021-03-26 21:37:25 0 [ERROR] InnoDB: Corrupted page [page id: space=0, page number=0] of datafile './ibdata1' could not be found in the doublewrite buffer.
2021-03-26 21:37:25 0 [ERROR] InnoDB: Plugin initialization aborted with error Data structure corruption
2021-03-26 21:37:25 0 [Note] InnoDB: Starting shutdown...
2021-03-26 21:37:25 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2021-03-26 21:37:25 0 [ERROR] Plugin 'InnoDB' init function returned error.
2021-03-26 21:37:25 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2021-03-26 21:37:25 0 [Note] Plugin 'FEEDBACK' is disabled.
2021-03-26 21:37:25 0 [ERROR] Unknown/unsupported storage engine: InnoDB
2021-03-26 21:37:25 0 [ERROR] Aborting

This different error message is corrected by renaming ibdata1 and ib_logfile* and restarting MariaDB, after which the error log reverts back to the one originally posted.
The other requested info is here:
emerge --info mariadb:
Portage 3.0.13 (python 3.8.8-final-0, default/linux/x86/17.0/hardened/selinux, gcc-10.2.0, glibc-2.32-r7, 5.4.97-gentoo-x86 i686)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.4.97-gentoo-x86-i686-Intel-R-_Pentium-R-_M_processor_1.86GHz-with-glibc2.1.3
KiB Mem:     2061964 total,   1726188 free
KiB Swap:    1572856 total,   1572856 free
Timestamp of repository gentoo: Fri, 26 Mar 2021 02:00:01 +0000
Head commit of repository gentoo: 16f964dc700f819d2182707cfc49fd0bb71987b9
sh bash 5.0_p18
ld GNU ld (Gentoo 2.35.1 p2) 2.35.1
app-shells/bash:          5.0_p18::gentoo
dev-lang/perl:            5.30.3::gentoo
dev-lang/python:          3.8.8::gentoo, 3.9.2::gentoo
dev-util/cmake:           3.18.5::gentoo
sys-apps/baselayout:      2.7::gentoo
sys-apps/openrc:          0.42.1-r1::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.69-r5::gentoo
sys-devel/automake:       1.16.2-r1::gentoo
sys-devel/binutils:       2.35.1-r1::gentoo
sys-devel/gcc:            9.3.0-r2::gentoo, 10.2.0-r5::gentoo
sys-devel/gcc-config:     2.3.3::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.10::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r7::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts:
    sync-rsync-verify-max-age: 24

ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="@BINARY-REDISTRIBUTABLE"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch preserve-libs protect-owned qa-unresolved-soname-deps sandbox selinux sesandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="https://gentoo.ussg.indiana.edu/ https://mirrors.rit.edu/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl apache2 authdaemond berkdb bzip2 calendar cgi clamdtop cli crypt ctype curl dovecot-sasl exif fileinfo filter ftp gd gdbm geoip gmp hardened hash iconv imap intl ipv6 jpeg json ldap ldap-sasl libglvnd libmysqlclient libtirpc maildir mysql mysqli ncurses nls nptl opcache openmp pam pcre pdo phar php pic pie png posix readline sasl seccomp selinux session simplexml sockets spamassasin spell split-usr ssl ssp tokenizer truetype unicode urandom vda vhosts x86 xattr xml xtpax zip zlib" ABI_X86="32" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_8" PYTHON_TARGETS="python3_8" RUBY_TARGETS="ruby26" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-db/mariadb-10.5.9-r4::gentoo was built with the following:
USE="backup debug pam perl (selinux) server xml -bindist -columnstore -cracklib -extraengine -galera -innodb-lz4 -innodb-lzo -innodb-snappy -jdbc -jemalloc -kerberos -latin1 (-libressl) (-mroonga) -numa -odbc -oqgraph -profiling -rocksdb -s3 -sphinx -sst-mariabackup -sst-rsync -static (-systemd) -systemtap -tcmalloc -test -yassl"
CFLAGS="-O2 -march=i686 -pipe -fno-strict-aliasing"
CXXFLAGS="-O2 -march=i686 -pipe -felide-constructors -fno-strict-aliasing"
FEATURES="unknown-features-warn config-protect-if-modified userpriv qa-unresolved-soname-deps sfperms parallel-fetch distlocks preserve-libs xattr selinux news unmerge-logs merge-sync binpkg-logs usersandbox multilib-strict assume-digests unmerge-orphans binpkg-docompress usersync fixlafiles network-sandbox binpkg-dostrip ipc-sandbox userfetch ebuild-locks sesandbox protect-owned strict sandbox"

/var/run/mysqld permissions:
drwxr-xr-x.  2 mysql    mysql      40 Mar 26 21:42 mysqld

grep mysql /etc/passwd:
mysql:x:60:60:MySQL program user:/dev/null:/sbin/nologin

In reference to optimization flags, that is another topic that is a little beyond my expertise. I set up the machine last spring, and MariaDB has worked without issue until last week's update. I have not changed my make.conf since the initial setup. The emerge --info above shows the details about the processor and flags. The CPU is a 15+ year-old Pentium M. It wouldn't surprise me to learn that some kind of support for it may have been dropped. The top part of my make.conf looks like this:
make.conf:
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
COMMON_FLAGS="-O2 -march=i686 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"

MAKEOPTS="-j2"

If this needs adjustment, I would have to take a closer look at https://wiki.gentoo.org/wiki/GCC_optimization and see what I can learn. On a hunch that it might be useful, I ran cpuid2cpuflags, with this result:
Code:
CPU_FLAGS_X86: mmx mmxext sse sse2
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21595

PostPosted: Sat Mar 27, 2021 4:03 am    Post subject: Reply with quote

It might be useful to know the specific illegal instruction, and the file in which it is found. If mysqld generates a core file, you can use gdb to examine the core to extract this. You won't even need debug symbols in this case, since we only need binary file granularity, and gdb can do that without symbols.
Back to top
View user's profile Send private message
trilithium
n00b
n00b


Joined: 18 Nov 2019
Posts: 43

PostPosted: Sat Mar 27, 2021 9:42 am    Post subject: Reply with quote

I can't see anything wrong with those optimization flags. There is a more specific target for the Pentium M architecture (-march=pentium-m) but since that CPU is a Pentium III variant -march=i686 should be entirely safe and not generate unsupported instructions. While it could still be a code generation regression in GCC 10.2.0 (e.g. a jump into the middle of an otherwise valid instruction could also cause SIGILL) such bugs are rare (generating correct code is always first priority for compiler developers) and nothing in the GCC 10 changes looks relevant.

Last edited by trilithium on Sat Mar 27, 2021 10:12 am; edited 1 time in total
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Sat Mar 27, 2021 9:47 am    Post subject: Reply with quote

What is the output of

getenforce
?
The only possible culprit i see in my ignorance is your
hardened/selinux
profile.
Maybe this profile makes gcc generate weird instructions also
_________________
:)
Back to top
View user's profile Send private message
autofyrsto
n00b
n00b


Joined: 16 Aug 2014
Posts: 11

PostPosted: Sat Mar 27, 2021 2:09 pm    Post subject: Reply with quote

The output of getenforce is:
Code:
# getenforce
Permissive

I set this in /etc/selinux/config because I believed SELinux was causing other problems that I will have to confront after I get MariaDB running again. 8O I will experiment some more today with downgrading GCC and also with gdb and I'll report back with any interesting findings. Thanks to all for taking a look and for sharing your ideas.
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Sat Mar 27, 2021 2:32 pm    Post subject: Reply with quote

@fedeliallalinea
suggested to run "quickpkg" the old gcc before --depcleaning it so as to install it presto in cases like this.
I just use
emerge --depclean -a --exclude=gcc
_________________
:)
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21595

PostPosted: Sat Mar 27, 2021 4:07 pm    Post subject: Reply with quote

OP's emerge --info shows that gcc-9.3 is still installed. It could be made active without rebuilding gcc, if OP chooses to go that route. I don't expect using an older gcc will help here, but if OP wants to try it, it is easier than he seems to think it will be.
Back to top
View user's profile Send private message
autofyrsto
n00b
n00b


Joined: 16 Aug 2014
Posts: 11

PostPosted: Sat Mar 27, 2021 11:00 pm    Post subject: Reply with quote

Yes! I did actually attempt earlier to downgrade to gcc-9.3.0, and then rebuild MariaDB. It didn't seem to work at the time because when I tried it I neither noticed nor understood the difference between these two errors:
Code:
[ERROR] InnoDB: Corrupted page [page id: space=0, page number=0] of datafile './ibdata1' could not be found in the doublewrite buffer.
Code:
[ERROR] mysqld got signal 4 ;

I just saw that MariaDB would not start, so I assumed that downgrading didn't help and I returned to gcc-10.2.0—but I left gcc-9.3.0 on the machine in case I wanted to return to it for future experiments. ... ... So I downgraded once again to gcc-9.3.0, but this time I also renamed ibdata1 and ib_logfile* before starting MariaDB. Voila! MaraiDB started once again. ...but now I am having trouble with the databases. I don't know if this ought to be discussed here or or in another thread, but I'll put it out there. The machine runs a Drupal site and a Webtrees site, and they are giving me these errors, respectively:

Drupal:
Drupal\Core\Database\DatabaseExceptionWrapper: SQLSTATE[42S02]: Base table or view not found: 1932 Table 'drupaldb.config' doesn't exist in engine: SELECT 1 AS "expression" FROM {config} "config" WHERE ("collection" = :db_condition_placeholder_0) AND ("name" = :db_condition_placeholder_1); Array ( [:db_condition_placeholder_0] => [:db_condition_placeholder_1] => core.extension ) in Drupal\Core\Config\CachedStorage->write() (line 124 of /var/www/localhost/htdocs/core/lib/Drupal/Core/Config/CachedStorage.php).
Webtrees:
PDOException: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'wt_gedcom' already exists in /var/www/localhost/htdocs/grahamtree/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:117

The good news is that MariaDB starts once again. The bad news is that some tables are messed up and preventing my site from loading up the way it was. After peeking around a little online, is surely seems related to renaming ibdata1, but I haven't yet found the fix. Does anybody happen to know a quick fix to get this back to the way it was?
Back to top
View user's profile Send private message
autofyrsto
n00b
n00b


Joined: 16 Aug 2014
Posts: 11

PostPosted: Sun Mar 28, 2021 4:21 am    Post subject: Reply with quote

Okay. It looks like I'm back online. The answer, simply enough, was to find the correct version of the ibdata1 file from my several attempts at re-naming and re-starting MariaDB, copy that back to /var/lib/mysql, and make sure the ownership was mysql:mysql on it. One last question before can I mark this particular thread as "solved":

How might I fill out a bug report on this, if I ought to? Is this as a GCC bug, or is it a MariaDB bug? (Or is it user error? :? )

Best regards and many thanks to you all for your helpful suggestions that got my server back up. :D
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Networking & Security All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum