You are not logged in.

#1 2019-07-08 21:24:19

Bruce1956
Member
Registered: 2015-03-08
Posts: 83

mariadb 10.4.x update manual intervention--can't find original config

So, I ran pacman -Syu and mariadb 10.4.6-1 installed, but when I went to update my configuration, /etc/mysql/ didn't exist, so I don't know what my configuration was in order to move it to the new files, which do exist now.  When I ran sudo systemctl restart mariadb.service && mariadb-upgrade -u root -p, I got this output:

Job for mariadb.service failed because the control process exited with error code.
See "systemctl status mariadb.service" and "journalctl -xe" for details.

Here is the output of systemctl status mariadb.service:

● mariadb.service - MariaDB 10.4.6 database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Mon 2019-07-08 14:06:45 MST; 17s ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
  Process: 22602 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 22603 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || >
  Process: 22611 ExecStart=/usr/bin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
 Main PID: 22611 (code=exited, status=1/FAILURE)
   Status: "MariaDB server is down"

Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: 10.4.6 started; log sequence number 1604144; transaction id 9
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] Server socket created on IP: '::'.
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.db' doesn't exist
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Aborting
Jul 08 14:06:45 archlinux-lenovo-g780 systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
Jul 08 14:06:45 archlinux-lenovo-g780 systemd[1]: mariadb.service: Failed with result 'exit-code'.
Jul 08 14:06:45 archlinux-lenovo-g780 systemd[1]: Failed to start MariaDB 10.4.6 database server.
lines 1-21/21 (END)

and journalctl -xe:

Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: Creating shared tablespace for temporary tables
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: Waiting for purge to start
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: 10.4.6 started; log sequence number 1604144; transaction id 9
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [Note] Server socket created on IP: '::'.
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.db' doesn't exist
Jul 08 14:06:43 archlinux-lenovo-g780 mysqld[22611]: 2019-07-08 14:06:43 0 [ERROR] Aborting
Jul 08 14:06:45 archlinux-lenovo-g780 systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
-- Subject: Unit process exited
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- An ExecStart= process belonging to unit mariadb.service has exited.
-- 
-- The process' exit code is 'exited' and its exit status is 1.
Jul 08 14:06:45 archlinux-lenovo-g780 systemd[1]: mariadb.service: Failed with result 'exit-code'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- The unit mariadb.service has entered the 'failed' state with result 'exit-code'.
Jul 08 14:06:45 archlinux-lenovo-g780 systemd[1]: Failed to start MariaDB 10.4.6 database server.
-- Subject: A start job for unit mariadb.service has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- A start job for unit mariadb.service has finished with a failure.
-- 
-- The job identifier is 42676 and the job result is failed.
Jul 08 14:06:45 archlinux-lenovo-g780 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=mariadb comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? termina>
Jul 08 14:06:45 archlinux-lenovo-g780 kernel: audit: type=1130 audit(1562620005.101:2032): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=mariadb comm="systemd" exe="/usr/lib/systemd/syste>
Jul 08 14:06:45 archlinux-lenovo-g780 sudo[22599]: pam_unix(sudo:session): session closed for user root
Jul 08 14:07:25 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 49564, resource id: 37749457, major code: 3 (GetWindowAttributes), minor cod>
Jul 08 14:07:25 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 49565, resource id: 37749457, major code: 14 (GetGeometry), minor code: 0
Jul 08 14:08:31 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 51472, resource id: 37749459, major code: 3 (GetWindowAttributes), minor cod>
Jul 08 14:08:31 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 51473, resource id: 37749459, major code: 14 (GetGeometry), minor code: 0
Jul 08 14:08:59 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 52843, resource id: 37749461, major code: 3 (GetWindowAttributes), minor cod>
Jul 08 14:08:59 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 52844, resource id: 37749461, major code: 14 (GetGeometry), minor code: 0
Jul 08 14:10:01 archlinux-lenovo-g780 kwin_x11[3624]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 54881, resource id: 37749463, major code: 3 (GetWindowAttributes), minor cod>
lines 2592-2634/2634 (END)

My guess is that running pacman -Syu created the new files and deleted the old ones, but if this is correct, how do I find my old configuration files to transfer to the new locations?  Or am I missing something obvious to others that is eluding me?

Here is the text of /etc/my.cnf:

#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

and here is the list of files in /etc/my.cnf.d:

client.cnf
enable_encryption.preset
mysql-clients.cnf
server.cnf

Thanks for any help!

Bruce

mariadb 10.4.x update requires manual intervention

2019-06-27 - Christian Hesse

The update to mariadb 10.4.6-1 and later changes configuration layout as recommended by upstream.

The main configuration file moved from /etc/mysql/my.cnf (and its include directory /etc/mysql/my.cnf.d/) to /etc/my.cnf (and /etc/my.cnf.d/). Make sure to move your configuration.

Instantiated services (like mariadb@foo.service) are no longer configured in separate files (like /etc/mysql/myfoo.cnf). Instead move your configuration to configuration blocks with group suffix in main configuration file, one for each service. A block should look something like this:

[mysqld.foo]
datadir = /var/lib/mysql-foo
socket = /run/mysqld/mysqld-foo.sock
...

Like every mariadb feature update this requires the data directory to be updated. With the new configuration in place run:

systemctl restart mariadb.service && mariadb-upgrade -u root -p

Offline

#2 2019-07-08 23:42:13

Zod
Member
From: Hoosiertucky
Registered: 2019-03-10
Posts: 636

Re: mariadb 10.4.x update manual intervention--can't find original config

I don't know, I bumped into this thread.

Maybe...
https://bbs.archlinux.org/viewtopic.php?id=247385

Offline

#3 2019-07-09 04:40:45

Bruce1956
Member
Registered: 2015-03-08
Posts: 83

Re: mariadb 10.4.x update manual intervention--can't find original config

Hi Zod,

Yes, I saw that before posting here.  I ran the same find command that poster shared.  Found a long list of stuff, but didn't want to mess around not knowing what I should do with the list.  Given that the manual intervention advice indicated that the appropriate configuration would be in the two directories indicated and neither exists anymore, I figured I'd see if someone knew more than what was in that post you recommended, or at least knew enough to explain which configuration files I needed to find.

I don't know what all is stored in mariadb, but I assume it is all replaceable by configuring correctly and allowing mariadb to refresh.  Am I wrong?  If not, I'm fine with removing mariadb and reinstalling itl  I already tried

sudo pacman -S mariadb

, which ran without error, but to no avail--it still produces the same errors when running status after running

sudo systemctl restart mariadb.service && mariadb-upgrade -u root -p

, so clearly, I don't know how to do that properly, either.

Sorry, I'm a bit gun shy after borking my entire operating system after trying things when I didn't know what I was doing, precisely.

Thanks, though!

Bruce

Last edited by Bruce1956 (2019-07-09 04:46:20)

Offline

#4 2019-07-09 05:06:43

Bruce1956
Member
Registered: 2015-03-08
Posts: 83

Re: mariadb 10.4.x update manual intervention--can't find original config

To my knowledge, I never installed mariadb on purpose.  I don't think I've ever used it, nor have I used mysql, to my knowledge.  Is there any reason it's needed for the operating system or any other commonly used software to work? Maybe I can just remove it from my system as bloat?

Offline

#5 2019-07-09 05:16:48

skunktrader
Member
From: Brisbane, Australia
Registered: 2010-02-14
Posts: 1,681

Re: mariadb 10.4.x update manual intervention--can't find original config

Do you have any of the "required by:" packages on this page installed?

Offline

#6 2019-07-09 16:47:45

loqs
Member
Registered: 2014-03-06
Posts: 19,101

Re: mariadb 10.4.x update manual intervention--can't find original config

Check the Required By and Install Reason from

pacman -Qi mariadb

Offline

#7 2019-07-09 20:52:50

Bruce1956
Member
Registered: 2015-03-08
Posts: 83

Re: mariadb 10.4.x update manual intervention--can't find original config

Here are the results from pacman -Qi mariadb:

Name            : mariadb
Version         : 10.4.6-1
Description     : Fast SQL database server, derived from MySQL
Architecture    : x86_64
URL             : https://mariadb.org/
Licenses        : GPL
Groups          : None
Provides        : mysql=10.4.6
Depends On      : mariadb-clients=10.4.6  inetutils  systemd-libs  libxml2  zstd
Optional Deps   : galera: for MariaDB cluster with Galera WSREP
                  perl-dbd-mysql: for mysqlhotcopy, mysql_convert_table_format and mysql_setpermission
Required By     : akonadi
Optional For    : None
Conflicts With  : mysql
Replaces        : None
Installed Size  : 225.91 MiB
Packager        : Christian Hesse <arch@eworm.de>
Build Date      : Fri 21 Jun 2019 02:53:40 AM MST
Install Date    : Mon 08 Jul 2019 09:35:10 PM MST
Install Reason  : Installed as a dependency for another package
Install Script  : Yes
Validated By    : Signature

So it certainly looks as if I don't need mariadb, since I don't need akonadi.  Guess I'll just remove both!

I'm curious, though, if I should have moved my configuration to the new locations before updating mariadb, or why else do I not have my configuration in the locations specified in the manual intervention notification.  If the change should be done before the update, it should probably say that in the notification--at least for the less savvy among us.

Thanks, skunktrader and loqs!

Bruce

Offline

#8 2019-07-09 20:58:49

loqs
Member
Registered: 2014-03-06
Posts: 19,101

Re: mariadb 10.4.x update manual intervention--can't find original config

If the configuration files were never changed I believe pacman will remove the configuration files from the old location and install the new configuration files in the new location.

Offline

#9 2019-07-09 21:12:39

Bruce1956
Member
Registered: 2015-03-08
Posts: 83

Re: mariadb 10.4.x update manual intervention--can't find original config

Deleted mariadb and akonadi, then ran

sudo pacman -Syu

without a hitch.  Thanks, guys!

Not sure if I should change this thread to solved, though, because the underlying issue is unresolved.

Offline

Board footer

Powered by FluxBB