Liunx中搭建服务器Mysql5.7《二》

安装的jar包 百度云盘共享:https://pan.baidu.com/s/1iRXq85RwI0Inc2ncuGTEJA

查看centos7 版本使用命令行cat /etc/redhat-release

查看需要安装的mysql

 

1.解压安装

a.可以在线下载:wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-el7-x86_64.tar.gz

b.可以上传

我习惯使用在线下载,wget需要先下载一下

先查看wget是否已经安装

这是已经安装完成了,如果没有安装运行yum install -y wget 在线安装一下就好

c.先把mysql的包下载一下命令行:

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-el7-x86_64.tar.gz

查看当前路径时pwd

如果需要上传jar可以使用rz,如果没有安装rz需要先安装

yum install -y lrzsz

 检查是否安装NySQL,如果安装 卸载之

rpm -qa |grep mysql
yum remove mysql*

 检查是否安装MariaDB,如果安装 卸载之(重要)

rpm -qa |grep mariadb
yum remove mariadb*

解压mysql的包到相关路径

创建安装账户:

[root@GeekDevOps ~]# useradd -s /bin/false -d /usr/local/mysql  mysql
[root@GeekDevOps ~]# id mysql
uid=1000(mysql) gid=1000(mysql) 组=1000(mysql)

安装过程

tar -xvzf mysql-5.7.22-el7-x86_64.tar.gz -C ./mysql     解压到指定的路径下

解压的jar全部移动到MySQL中在删除mysql-5.7.22-el7-x86_64

mv * ../  移动全部到上一个目录

rmdir mysql-5.7.22-el7-x86_64 删除这个目录(只有当文件夹为空的时候才可以删除,如果不为空使用rm -rf 文件)

[root@GeekDevOps mysql]# rmdir mysql-5.7.21-el7-x86_64/
[root@GeekDevOps mysql]# mkdir data
[root@GeekDevOps mysql]# chown -R mysql.mysql ../mysql
[root@GeekDevOps mysql]# cd bin
[root@GeekDevOps bin]# ./mysqld --user=mysql --basedir=/usr/local/src/mysql --datadir=/usr/local/src/mysql/data --initialize

获取初始化密码

[root@GeekDevOps bin]# cp ../support-files/mysql.server /etc/init.d/mysqld

这个作用是开启mysql在任何一个位置都可以

开启mysql: service mysqld start

报错:

Starting MySQL.2018-08-02T09:51:18.263223Z mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.  ERROR! The server quit without updating PID file (/var/lib/mysql/E2_3752F_1.pid).

出现这个问题:mv /etc/my.cnf  /etc/my.cnf.bak.bak    修改文文件的名

修改完成后重新开启:service mysqld start

进入mysql中修改密码:

修改完密码后,把刚开始修改的/etc/my.cnf  在改回来进行配置,

mv /etc/my.cnf.bak.bak /etc/my.cnf

在重新开启mysql:

service mylqd start

出现错误具体的看什么错误一般在配置/etc/my.cnf配置成这样,就不会在出错了

[mysqld]
port=3308
symbolic-links=0
basedir = /usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
character_set_server=utf8
user=mysql
max_connections=1500
symbolic-links=0
log-error=/usr/local/mysql/mysqld.log
pid-file=/usr/local/mysql/data/E2_3752F_1.pid

!includedir /etc/my.cnf.d

一般的错误还有.

[root@E2_3752F_1 etc]# service mysqld start
Starting MySQL..................... ERROR! The server quit without updating PID file (/usr/local/mysql/data/E2_3752F_1.pid).


就使用全局配置搜索一下:

find / -name *.pid

寻找到配置到/usr/local/mysql/data/E2_3752F_1.pid 这个路径下就可以了

在重新开启mysql

这样mysql就配置完成,

mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/mysql/data/mysql.pid) 的解决方法:

1、可能是/opt/mysql/data/数据目录mysql用户没有权限(修改数据目录的权限)

   解决方法 :给予权限,执行  "chown -R mysql.mysql /opt/mysql/data"  然后重新启动mysqld

2、可能进程里已经存在mysql进程

   解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9  进程号”杀死,然后重新启动mysqld!

3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。

   解决方法:去mysql的二进制日志目录看看,如果存在mysql-binlog.index,就赶快把它删除掉吧

4、mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]下有没有指定数据目录(datadir)。

   解决方法:请在[mysqld]下设置这一行:datadir = /opt/mysql/data

5、skip-federated字段问题

   解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

6、错误日志目录不存在

   解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限

7、selinux惹的祸,如果是centos系统,默认会开启selinux

   解决方法:先临时改为警告模式:[root@www php]# setenforce 0

             然后打开/etc/sysconfig/selinux,把SELINUX=enforcing改为SELINUX=disabled

开启的时候自动开启mysql=========================================================

1、将服务文件拷贝到init.d下,并重命名为mysql

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

2、赋予可执行权限

chmod +x /etc/init.d/mysqld

3、添加服务

chkconfig --add mysqld

4、显示服务列表

chkconfig --list

如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入

chkconfig --level 345 mysqld on

5、重启电脑

reboot

猜你喜欢

转载自blog.csdn.net/wd521521/article/details/81357912