Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Mar 2021 16:33:42 -0600
From:      Gary Aitken <freebsd@dreamchaser.org>
To:        John Levine <johnl@iecc.com>, freebsd-questions@freebsd.org
Subject:   Re: problems upgrading mysql 5.6 => 5.7
Message-ID:  <5ec345c3-01a6-f959-0971-5836ecc85e20@dreamchaser.org>
In-Reply-To: <20210321235845.E3B5870DD030@ary.qy>
References:  <20210321235845.E3B5870DD030@ary.qy>

Next in thread | Previous in thread | Raw E-Mail | Index | Archive | Help
On 3/21/21 5:58 PM, John Levine wrote:

> If you're using the mysql-server package, Mysql runs as the mysql
> user, user ID 88, and all of its data files should belong
> to mysql.
> 
> Unless you really REALLY know what you are doing, nothing but mysql should be
> writing the files in its database directory so nobody else should have write access to it.

Well, I really *don't* know what I'm doing...
I always started mysqld from a user account.  I didn't pay attention to the
owner/protections on the files, just set the data dir, and at one point I
changed the permissions of everything in that account to 600; I may have
forced the owner/group as well.  I knew mysqld ran as mysql but I thought it
only did that when started by root.
Anyway...

I chmod'd and chown'ed things to mysql:mysql and now get the following:

  [Warning] Can't create test file /hd2/home/me/mysql_data/breakaway.lower-test
  [Note] mysqld (mysqld 5.7.33-log) starting as process 14257 ...
  [Warning] Can't create test file /usr/home/me/mysql_data/breakaway.lower-test
  [Warning] Can't create test file /usr/home/me/mysql_data/breakaway.lower-test
  [Warning] One can only use the --user switch if running as root
  mysqld: File './mysql-bin.index' not found (Errcode: 13 - Permission denied)
  [ERROR] Aborting
  [Note] Binlog end

There is an old mysql-bin.index file:
~/mysql_data$ ls -l mysql-bin.index
-rwxrwx---  1 mysql  mysql  0 Feb  8  2020 mysql-bin.index
and the directory:
~/mysql_data$ ls -dl .
drwxrwxr-x  12 mysql  mysql  1024 Mar 22 13:19 .

so I don't understand what it is complaining about.

aside:
It was suggested to me that I go straight to version 8.  However, when
I deinstalled mysql57-client and mysql57-server it also wanted to deinstall
libreoffice.  I deleted using -f but when I tried to reinstall
mysql80-server it wanted to reinstall mysql57-client and mysql80-client both,
but then I got this:

Proceed with this action? [y/N]: y
[1/3] Fetching mysql80-server-8.0.23.txz: 100%   18 MiB 263.4kB/s    01:10
[2/3] Fetching mysql57-client-5.7.33.txz: 100%    2 MiB 397.0kB/s    00:05
[3/3] Fetching mysql80-client-8.0.23.txz: 100%    4 MiB 398.4kB/s    00:10
Checking integrity... done (2 conflicting)
   - mysql57-client-5.7.33 conflicts with mysql80-server-8.0.23 on /usr/local/bin/mysql_ssl_rsa_setup
   - mysql80-client-8.0.23 conflicts with mysql57-client-5.7.33 on /usr/local/bin/mysql
Checking integrity... done (0 conflicting)
Conflicts with the existing packages have been found.
One more solver iteration is needed to resolve them.
The following 3 package(s) will be affected (of 0 checked):

Installed packages to be REMOVED:
         libreoffice: 7.0.4.2

New packages to be INSTALLED:
         mysql80-client: 8.0.23
         mysql80-server: 8.0.23

So I tried deleting libreoffice, installing mysql80, then libreoffice, but
libreoffice wants to replace mysql80-client with mysql57-client.

That's using pkg to install, as opposed to building from ports.

Gary





Want to link to this message? Use this URL: <http://docs.FreeBSD.org/cgi/mid.cgi?5ec345c3-01a6-f959-0971-5836ecc85e20>