1、报错信息
Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details.
使用 systemctl status mariadb.service
journalctl -xe
根据如上Mariadb报错的信息,表示Mariadb数据库服务启动时,要将启动信息、日常的信息写入日志目录中的日志文件中,而错误显示该日志目录不存在:/var/log/mariadb/,解决方法:
检测一下该目录/var/log/mariadb/是否存在;
如果目录不存在,创建目录即可,并且授权访问;
mkdir -p /var/log/mariadb/
chown -R mysql.mysql /var/log/mariadb/
chmod -R o+w /var/log/mariadb/
根据如上的排错方法,数据库服务还是无法启动,报错信息如下:
根据如上Mariadb报错的信息,表示Mariadb数据库服务启动时,会加载Mariadb数据目录中的基础数据、表信息,错误显示数据库服务没有初始化,初始化主要是为了装载基础数据、创建用户、权限信息,定义数据库结构等,确保数据库初始化的时候,数据目录是空的,防止将往前的数据给覆盖。
/usr/bin/mysql_install_db --user=mysql --datadir=/var/lib/mysql/ --force(强制初始化);
ll /var/lib/mysql/
chown -R mysql /var/lib/mysql/
当我们查看软件服务启动日志、内核日志,均无法查找问题的原因时,记得查看软件服务的自身应用程序日志。应用程序的日志路径可以通过配置文件查找,/etc/my.cnf查看。
#静态查看日志文件末尾30行的日志信息;
tail -n 30 /var/log/mariadb/mariadb.log
#实时查看日志文件末尾30行的日志信息;tail -fn 30 /var/log/mariadb/mariadb.log (背锅侠专用)
根据如上的错误提示,表示启动Mariadb数据库服务时,会将启动的进程ID号写入至pid文件中,错误显示该pid文件无法写入,该文件或者目录不存在。
解决方法:
检测该文件和目录是否存在,不存在创建并且授权mysql用户访问;
mkdir -p /var/run/mariadb/
chown -R mysql.mysql /var/run/mariadb/
使用mysql命令无法进入MYSQL数据库中,报错信息如下:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
#根据如上的错误的提示,表示不能连接MYSQL数据库服务,通过Socket文件:/var/lib/mysql/mysql.sock。
MYSQL数据库服务属于C/S模式(Client和Server),启动MYSQLD属于服务端,默认执行mysql命令回车(客户端工具|本地访问|远程访问|Navicat)。
MYSQL数据库连接访问,有两种方式,一种是通过TCP/IP远程连接方式,一种是通过本地socket文件方式,如上错误提示是使用的本地socket文件,可以通过my.cnf查看socket文件路径或者ps -ef|grep mysql查看。
ps -ef|grep mysql
cat /etc/my.cnf|grep socket
mysql --socket=/tmp/mysql.sock
ln -s /var/lib/mysql/mysql.sock /tmp/
Linux运维常见故障关键词(30+)
Error|ERROR|error(错误);
Failed|fail(失败);
Warning|warn(警告);
Deny|denied(拒绝);
Refused|refuse(拒绝);
Exit|exit(退出);
No such|No file|NOT(没有);
Not found|No exist(没有找到|不存在);
False|false(错误);
Can’t|Can not(不能)|not initialized(没有初始化);
Command not found| C CC not found(命令没有发现)
Cannot create(不能创建);
Permission denied(没有权限);
Can't connect(不能连接);
基于YUM二进制LNP+MYSQL主从实战
准备3台服务器,其中一台作为Nginx WEB服务器+PHP-FPM(FastCGI),另外两台作为MYSQL主从服务器,服务器IP信息:
10.10.10.140-Linux+Nginx+PHP
10.10.10.141-MYSQL Master;
10.10.10.142-MYSQL Slave;
配置LNP,Nginx WEB服务器+PHP-FPM(FastCGI),配置方法如下:
安装LNP服务;
yum install nginx php php-devel php-mysql php-fpm -y
Nginx默认发布目录:/usr/share/nginx/html/;
Nginx配置文件目录:/etc/nginx/
/usr/share/nginx/html/,发布目录创建index.php测试页面;
vim index.php
phpinfo();
?>
配置LNP服务整合;
cd /etc/nginx
cp nginx.conf.default nginx.conf
添加PHP FastCGI 9000信息内容,其他配置信息不动;
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;}
启动Nginx、PHP-FPM服务即可;
service php-fpm restart
service nginx restart