Liunx中搭建服务器Mysql5.7《二》
安装的jar包 百度云盘共享//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
还没有评论,来说两句吧...