操作系统:CentOS Linux release 7.6.1810 (Core)
mariadb-10.5.16
mariadb安装目录
/opt/soft/mariadb-10.5.16-linux-systemd-x86_64
创建软连接
ln -s /opt/soft/mariadb-10.5.16-linux-systemd-x86_64 /usr/local/mysql
配置mariadb.service后,通过systemctl start mariadb,提示异常。
[root@localhost mariadb]# systemctl start mariadb
Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details.
[root@localhost mariadb]#
执行 journalctl -xe 后提示 没有权限。
localhost.localdomain systemd[11216]: Failed at step EXEC spawning /usr/local/mysql/bin/mariadbd: Permission denied
4月 25 22:35:53 localhost.localdomain polkitd[728]: Registered Authentication Agent for unix-process:10899:1223692 (system bus name :1.205 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/
4月 25 22:35:53 localhost.localdomain systemd[1]: Starting MariaDB 10.5.16 database server...
-- Subject: Unit mariadb.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mariadb.service has begun starting up.
4月 25 22:35:53 localhost.localdomain systemd[1]: Couldn't stat device /dev/char/10:200
4月 25 22:35:53 localhost.localdomain systemd[11029]: Failed at step EXEC spawning /usr/local/mysql/bin/mariadbd: Permission denied
-- Subject: Process /usr/local/mysql/bin/mariadbd could not be executed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- The process /usr/local/mysql/bin/mariadbd could not be executed and failed.
--
-- The error number returned by this process is 13.
4月 25 22:35:53 localhost.localdomain systemd[1]: mariadb.service: main process exited, code=exited, status=203/EXEC
4月 25 22:35:53 localhost.localdomain systemd[1]: Failed to start MariaDB 10.5.16 database server.
-- Subject: Unit mariadb.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mariadb.service has failed.
--
-- The result is failed.
4月 25 22:35:53 localhost.localdomain systemd[1]: Unit mariadb.service entered failed state.
4月 25 22:35:53 localhost.localdomain systemd[1]: mariadb.service failed.
4月 25 22:35:53 localhost.localdomain polkitd[728]: Unregistered Authentication Agent for unix-process:10899:1223692 (system bus name :1.205, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, l
4月 25 22:36:06 localhost.localdomain polkitd[728]: Registered Authentication Agent for unix-process:11086:1225003 (system bus name :1.206 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/
4月 25 22:36:06 localhost.localdomain systemd[1]: Starting MariaDB 10.5.16 database server...
-- Subject: Unit mariadb.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mariadb.service has begun starting up.
4月 25 22:36:06 localhost.localdomain systemd[11216]: Failed at step EXEC spawning /usr/local/mysql/bin/mariadbd: Permission denied
-- Subject: Process /usr/local/mysql/bin/mariadbd could not be executed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- The process /usr/local/mysql/bin/mariadbd could not be executed and failed.
--
-- The error number returned by this process is 13.
4月 25 22:36:06 localhost.localdomain systemd[1]: mariadb.service: main process exited, code=exited, status=203/EXEC
4月 25 22:36:06 localhost.localdomain systemd[1]: Failed to start MariaDB 10.5.16 database server.
-- Subject: Unit mariadb.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mariadb.service has failed.
--
-- The result is failed.
排查过程:
1、检查/usr/local/mysql/bin/mariadbd 权限
[root@localhost mariadb]#
[root@localhost mariadb]# ls -lrt /usr/local/mysql/bin/mariadbd
-rwxr-xr-x 1 mysql mysql 297637010 5月 18 2022 /usr/local/mysql/bin/mariadbd
[root@localhost mariadb]#
[root@localhost mariadb]# ls -lrt /usr/local/mysql/
总用量 20
drwxr-xr-x 2 mysql mysql 4096 1月 19 2022 bin
drwxr-xr-x 5 mysql mysql 293 1月 19 2022 lib
drwxrwxr-x 33 mysql mysql 4096 5月 19 2022 share
drwxrwxr-x 2 mysql mysql 56 5月 19 2022 scripts
drwxrwxr-x 4 mysql mysql 30 5月 19 2022 man
drwxr-xr-x 2 mysql mysql 23 5月 23 2022 logs
drwxrwxr-x 4 mysql mysql 202 5月 24 2022 support-files
-rw-r--r-- 1 mysql mysql 5990 5月 26 2022 mariadb.service
drwxr-xr-x 2 mysql mysql 6 6月 8 2022 run
drwx------ 4 mysql mysql 201 6月 8 2022 data
-rw-r--r-- 1 mysql mysql 1158 4月 25 22:35 my.cnf
[root@localhost mariadb]# ls -lrt /usr/local/
总用量 0
drwxr-xr-x. 2 root root 6 4月 11 2018 src
drwxr-xr-x. 2 root root 6 4月 11 2018 sbin
drwxr-xr-x. 2 root root 6 4月 11 2018 libexec
drwxr-xr-x. 2 root root 6 4月 11 2018 lib64
drwxr-xr-x. 2 root root 6 4月 11 2018 lib
drwxr-xr-x. 2 root root 6 4月 11 2018 include
drwxr-xr-x. 2 root root 6 4月 11 2018 games
drwxr-xr-x. 2 root root 6 4月 11 2018 etc
drwxr-xr-x. 2 root root 6 4月 11 2018 bin
drwxr-xr-x. 5 root root 49 2月 13 16:07 share
lrwxrwxrwx 1 root root 46 4月 25 22:35 mysql -> /opt/soft/mariadb-10.5.16-linux-systemd-x86_64
[root@localhost mariadb]#
[root@localhost mariadb]# ls -lrt /opt/soft/
总用量 4
drwxr-xr-x 11 mysql mysql 160 5月 26 2022 mariadb-10.5.16-linux-systemd-x86_64
-rw-r--r-- 1 root root 241 4月 25 22:35 install.log
[root@localhost mariadb]# ls -lrt /opt
总用量 40
drwx--x--x. 4 root root 28 2月 27 18:44 containerd
drwxr-xr-x. 3 root root 18 2月 27 18:44 LicClient
drwxr-xr-x. 22 licserver licserver 4096 3月 22 16:43 license-server
drwxr-xr-x. 3 root root 104 4月 12 14:16 baksoft
-rw-r--r--. 1 root root 1366 4月 14 01:20 install.log
drwxr-xr-x. 2 root root 62 4月 23 10:43 script
drwxr-xr-x. 5 root root 201 4月 23 21:41 agent
drwxr-xr-x. 32 root root 4096 4月 25 19:16 cloudops
-rw-r--r--. 1 root root 25328 4月 25 19:25 log.txt
drwxr-x--- 3 root root 69 4月 25 22:35 soft
[root@localhost mariadb]#
发现/opt/ 下 soft 目录没有其他人的权限。
给 /opt/soft添加 其他人权限
[root@localhost mariadb]# chmod 755 /opt/soft/
[root@localhost mariadb]#
[root@localhost mariadb]# ls -lrt /opt
总用量 40
drwx--x--x. 4 root root 28 2月 27 18:44 containerd
drwxr-xr-x. 3 root root 18 2月 27 18:44 LicClient
drwxr-xr-x. 22 licserver licserver 4096 3月 22 16:43 license-server
drwxr-xr-x. 3 root root 104 4月 12 14:16 baksoft
-rw-r--r--. 1 root root 1366 4月 14 01:20 install.log
drwxr-xr-x. 2 root root 62 4月 23 10:43 script
drwxr-xr-x. 5 root root 201 4月 23 21:41 agent
drwxr-xr-x. 32 root root 4096 4月 25 19:16 cloudops
-rw-r--r--. 1 root root 25328 4月 25 19:25 log.txt
drwxr-xr-x 3 root root 69 4月 25 22:35 soft
[root@localhost mariadb]#
查看mariadb的服务状态已正常。
[root@localhost mariadb]# systemctl status mariadb.service
● mariadb.service - MariaDB 10.5.16 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Active: active (running) since 二 2023-04-25 22:49:21 CST; 38s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 11576 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 11427 ExecStartPre=/bin/sh -c [ ! -e /usr/local/mysql/bin/galera_recovery ] && VAR= || VAR=`cd /usr/local/mysql/bin/..; /usr/local/mysql/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 11425 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Main PID: 11551 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 24
Memory: 55.5M
CGroup: /system.slice/mariadb.service
└─11551 /usr/local/mysql/bin/mariadbd --defaults-file=/usr/local/mysql/my.cnf
4月 25 22:49:20 localhost.localdomain systemd[1]: Starting MariaDB 10.5.16 database server...
4月 25 22:49:21 localhost.localdomain mariadbd[11551]: 2023-04-25 22:49:21 0 [Note] /usr/local/mysql/bin/mariadbd (mysqld 10.5.16-MariaDB) starting as process 11551 ...
4月 25 22:49:21 localhost.localdomain systemd[1]: Started MariaDB 10.5.16 database server.
[root@localhost mariadb]#
[root@localhost mariadb]#
若提示没有mysql,检查下mysql环境变量
[root@localhost mariadb]# mysql
-bash: mysql: 未找到命令
[root@localhost mariadb]#