在Debian 10上,无法再启动MariaDB

分享于 

9分钟阅读

互联网

  繁體

问题:

我无法再启动MariaDB sql了,当我尝试启动MariaDB时:


me@server:# systemctl start mariadb.service


Job for mariadb.service failed because the control process exited with error code.


See "systemctl status mariadb.service" and "journalctl -xe" for details.



使用systemctl状态mariadb.service:


me@server:# systemctl status mariadb.service


● mariadb.service - MariaDB 10.3.27 database server


 Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)


 Active: failed (Result: exit-code) since Mon 2020-12-07 21:04:05 CET; 1min 53s ago


 Docs: man:mysqld(8)


 https://mariadb.com/kb/en/library/systemd/


 Process: 13289 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)


 Process: 13290 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)


 Process: 13292 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environm


 Process: 13339 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)


 Main PID: 13339 (code=exited, status=1/FAILURE)


 Status: "MariaDB server is down"



Dec 07 21:03:59 server systemd[1]: Starting MariaDB 10.3.27 database server...


Dec 07 21:04:01 server mysqld[13339]: 2020-12-07 21:04:01 0 [Note] /usr/sbin/mysqld (mysqld 10.3.27-MariaDB-0+deb10u1) starting as process 13339 ...


Dec 07 21:04:05 server systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE


Dec 07 21:04:05 server systemd[1]: mariadb.service: Failed with result 'exit-code'.


Dec 07 21:04:05 server systemd[1]: Failed to start MariaDB 10.3.27 database server.



当我转到journalctl -xe时,我只得到:


Dec 07 21:10:04 vps69770 sshd[13784]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=161.35.121.130 user=root


Dec 07 21:10:04 sshd[13712]: Received disconnect from 124.239.216.233 port 59950:11: Bye Bye [preauth]


Dec 07 21:10:04 sshd[13712]: Disconnected from authenticating user root 124.239.216.233 port 59950 [preauth]


Dec 07 21:10:04 sshd[13771]: Failed password for root from 111.201.133.174 port 48444 ssh2


Dec 07 21:10:05 sshd[13771]: Received disconnect from 111.201.133.174 port 48444:11: Bye Bye [preauth]


Dec 07 21:10:05 sshd[13771]: Disconnected from authenticating user root 111.201.133.174 port 48444 [preauth]


Dec 07 21:10:05 systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE


-- Subject: Unit process exited


-- Defined-By: systemd


-- Support: https://www.debian.org/support


-- 


-- An ExecStart= process belonging to unit mariadb.service has exited.


-- 


-- The process' exit code is 'exited' and its exit status is 1.


Dec 07 21:10:05 server systemd[1]: mariadb.service: Failed with result 'exit-code'.


-- Subject: Unit failed


-- Defined-By: systemd


-- Support: https://www.debian.org/support


-- 


-- The unit mariadb.service has entered the 'failed' state with result 'exit-code'.


Dec 07 21:10:05 server systemd[1]: Failed to start MariaDB 10.3.27 database server.


-- Subject: A start job for unit mariadb.service has failed


-- Defined-By: systemd


-- Support: https://www.debian.org/support


-- 


-- A start job for unit mariadb.service has finished with a failure.


-- 


-- The job identifier is 1241 and the job result is failed.


Dec 07 21:10:06 server sshd[13784]: Failed password for root from 161.35.121.130 port 37142 ssh2


Dec 07 21:10:06 server sshd[13784]: Received disconnect from 161.35.121.130 port 37142:11: Bye Bye [preauth]


Dec 07 21:10:06 server sshd[13784]: Disconnected from authenticating user root 161.35.121.130 port 37142 [preauth]



这是MariaDB错误的输出


2020-12-07 22:23:02 0 [Note] InnoDB: Using Linux native AIO


2020-12-07 22:23:02 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins


2020-12-07 22:23:02 0 [Note] InnoDB: Uses event mutexes


2020-12-07 22:23:02 0 [Note] InnoDB: Compressed tables use zlib 1.2.11


2020-12-07 22:23:02 0 [Note] InnoDB: Number of pools: 1


2020-12-07 22:23:02 0 [Note] InnoDB: Using SSE2 crc32 instructions


2020-12-07 22:23:02 0 [Warning] InnoDB: io_setup() failed with EAGAIN. Will make 5 attempts before giving up.


2020-12-07 22:23:02 0 [Warning] InnoDB: io_setup() attempt 1.


2020-12-07 22:23:02 0 [Warning] InnoDB: io_setup() attempt 2.


2020-12-07 22:23:03 0 [Warning] InnoDB: io_setup() attempt 3.


2020-12-07 22:23:03 0 [Warning] InnoDB: io_setup() attempt 4.


2020-12-07 22:23:04 0 [Warning] InnoDB: io_setup() attempt 5.


2020-12-07 22:23:04 0 [Warning] InnoDB: io_setup() failed with EAGAIN after 5 attempts.


2020-12-07 22:23:04 0 [Note] InnoDB: You can disable Linux Native AIO by setting innodb_use_native_aio = 0 in my.cnf


2020-12-07 22:23:04 0 [Warning] InnoDB: Warning: Linux Native AIO disabled because _linux_create_io_ctx() failed. To get rid of this warning you can try increasing system fs.aio-max-nr to 1048576 or larger or setting innodb_use_native_aio = 0 in my.cnf


2020-12-07 22:23:04 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M


2020-12-07 22:23:04 0 [Note] InnoDB: Completed initialization of buffer pool


2020-12-07 22:23:04 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().


2020-12-07 22:23:06 0 [Note] InnoDB: 128 out of 128 rollback segments are active.


2020-12-07 22:23:06 0 [Note] InnoDB: Creating shared tablespace for temporary tables


2020-12-07 22:23:06 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...


2020-12-07 22:23:06 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.


2020-12-07 22:23:06 0 [Note] InnoDB: Waiting for purge to start


2020-12-07 22:23:06 0 [Note] InnoDB: 10.3.27 started; log sequence number 27901641; transaction id 116488


2020-12-07 22:23:06 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool


2020-12-07 22:23:06 0 [Note] Plugin 'FEEDBACK' is disabled.


2020-12-07 22:23:06 0 [Note] Recovering after a crash using tc.log


2020-12-07 22:23:06 0 [ERROR] Bad magic header in tc log


2020-12-07 22:23:06 0 [ERROR] Crash recovery failed. Either correct the problem (if it's, for example, out of memory error) and restart, or delete tc log and start mysqld with --tc-heuristic-recover={commit|rollback}


2020-12-07 22:23:06 0 [ERROR] Can't init tc log


2020-12-07 22:23:06 0 [ERROR] Aborting




答案1:

通过删除/重新命名tc.log解决了它:


mv -vi /var/lib/mysql/tc.log /root



,并重新启动数据库


service mysql restart



在MariaDB知识库中,请参见tc日志中错误的magic头



STA  CAN  DEB  ANY  Debian  Mariadb  
相关文章