一:安装前准备:

  1.1检查linux版本:cat /etc/system-release

    CentOS Linux release 7.6.1810 (Core)

  1.2查看系统是否安装MySQL:

    rpm -qa | grep mysql

    如果有安装则删除:

    rpm -e --nodeps softfullname

  1.3删除mariadb:

    rpm -qa | grep mariadb

    rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64

    报错:

    错误:依赖检测失败:
    libmysqlclient.so.18()(64bit) 被 (已安裝) postfix-2:2.10.1-7.el7.x86_64 需要
    libmysqlclient.so.18(libmysqlclient_18)(64bit) 被 (已安裝) postfix-2:2.10.1-7.el7.x86_64 需要

    不检测依赖强制删除:

    rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

  1.4关闭selinux:

    getenforce

      如果输出为:Enforcing

    则需要关闭:

    临时关闭selinux:

      setenforce 0

    永久关闭selinux:

      vim /etc/selinux/config

      SELINUX=disabled

    reboot后生效

  1.5检查是否安装libaio:

    rpm -qa | grep libaio

    yum search libaio

    yum -y install libaio

二:官网下载:

  2.1下载安装包:

    https://dev.mysql.com/downloads/mysql/5.7.html#downloads

    选择版本

    Linux - Generic

    Linux - Generic (glibc2.5)(x86,64-bit)

    Compressed TAR Archive

  2.2上传文件到centos7

    解压文件:

      tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

    移动文件到路径:

      mv mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql

      建议用此命令移动:

      mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql

      cp -r mysql /usr/local/

三:安装mysql

  3.1建立组和用户:

    groupadd mysql

    useradd -r -g mysql mysql

   给mysql数据库创建专有用户,该用户只能访问mysql目录,不能访问系统其它目录

    另外不建议直接用root初始化mysql,否则连接mysql时会报错:[ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!

  3.2创建data:

    cd /usr/local/mysql/

    mkdir data

    cd /usr/local/

    chown -R mysql:mysql mysql/

  3.3初始化mysql:

    cd /usr/local/mysql/bin/

    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US

    2019-01-15T01:21:28.631674Z 1 [Note] A temporary password is generated for root@localhost: uMQO;syZJ9q=

    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

    2019-01-15T05:31:44.610567Z 1 [Note] A temporary password is generated for root@localhost: SXrGkn=;e1-d

    记住临时密码

    如果忘记密码或者想重新初始化,可以先将mysql/data目录中文件删除,然后再执行初始化命令

  3.4修改配置文件:

    vim /etc/my.cnf

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
#skip-name-resolve
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=16M

四:配置mysql:

  4.1设置开机启动:

    复制脚本到资源目录:          cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

    增加 mysqld 服务控制脚本执行权限: chmod +x /etc/rc.d/init.d/mysqld

    将 mysqld 服务加入到系统服务:   chkconfig --add mysqld

    检查mysqld服务是否已经生效:     chkconfig --list mysqld

      命令输出类似下面的结果:

      mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

      表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用 service 命令控制 mysql 的启动和停止。

    查看启动项:chkconfig --list | grep -i mysql

    删除启动项:chkconfig --del mysql

    启动 mysqld:service mysqld start

  报错处理:

    如报错:mysqld[3559]: /etc/rc.d/init.d/mysqld:行239: my_print_defaults: 未找到命令

      拷贝文件到 /usr/bin

      cp /usr/local/mysql/bin/my_print_defaults /usr/bin

    如报错:mysqld[3683]: /etc/rc.d/init.d/mysqld: 第 259 行:cd: /user/local/mysql: 没有那个文件或目录

        mysqld[3683]: Starting MySQL ERROR! Couldn't find MySQL server (/user/local/mysql/bin/mysqld_safe)

      vim /etc/rc.d/init.d/mysqld

        basedir=/usr/local/mysql

        datadir=/data/mysql

        mysqld_pid_file_path=/data/mysql

  4.2添加环境变量:

    vim /etc/profile

    添加:

    export PATH=$PATH:/usr/local/mysql/bin
    export PATH

    执行,使其生效:

    source /etc/profile

    查看是否生效:

    echo $PATH

   或者添加软连接  ln -s /usr/local/mysql/bin/mysql /usr/bin

五:登陆MySQL:

  mysql -uroot -p

  修改密码:

  SET PASSWORD = PASSWORD("xxxx");

如登陆报错:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
建立软连接:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
删除软连接
rm -rf mysql.sock
不可写成,会删除链接文件
rm -rf mysql.sock/

六:添加防火墙策略:

感谢:

https://blog.csdn.net/vipbupafeng/article/details/80271089

https://www.cnblogs.com/zero-gg/p/8875598.html

https://blog.csdn.net/z13615480737/article/details/80019881

Centos7安装配置MySQL5.7的更多相关文章

  1. Centos7 安装配置mysql5.6

    Centos7下完美安装并配置mysql5.6   Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想用mysql的人来说并不是一个好消息. 最近我搜罗了网上各种安装教程,各 ...

  2. centos7安装配置mysql5.6

    1. 下载mysql的repo源 $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 2. 安装mysql-co ...

  3. Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...

  4. windows下如何安装配置mysql-5.7-m14-winx64(zip格式的安装)

    win7 64位下如何安装配置mysql-5.7.4-m14-winx64 1.   mysql-5.7.4-m14-winx64.zip下载 官方网站下载地址:http://dev.mysql.co ...

  5. win7 64位下如何安装配置mysql-5.7.4-m14-winx64

    win7 64位下如何安装配置mysql-5.7.4-m14-winx641. mysql-5.7.4-m14-winx64.zip下载 官方网站下载地址:http://dev.mysql.com/g ...

  6. Centos7安装配置Apache+PHP+Mysql+phpmyadmin

    转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...

  7. Centos7安装配置JDK8

    Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...

  8. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  9. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

随机推荐

  1. Python 编程快速上手 第八章总结

    在下面函数中的()中,可为相对路径,也可为绝对路径. 获知当前目录,改变当前目录,查看当前目录 更改当前目录:os.getcwd() 改变当前目录:os.chdir() 查看当前目录:os.listd ...

  2. spring cloud: zuul(二): zuul的serviceId/service-id配置(微网关)

    spring cloud: zuul(二): zuul的serviceId/service-id配置(微网关) zuul: routes: #路由配置表示 myroute1: #路由名一 path: ...

  3. TStringList 常用方法与属性

    /TStringList 常用方法与属性 :varList: TStringList;i: Integer;begin List := TStringList.Create;List.Add('Str ...

  4. for...in和for...of循环的区别

    使用for...in和for...of分别对Array,Set,Map做测试 var a=["A","B","C"]; var b=new ...

  5. rabbimq

    问题 启动RabbitMQ后,没法访问Web管理页面   解决 RabbitMQ安装后默认是不启动管理模块的,所以需要配置将管理模块启动 启动管理模块命令如下   rabbitmqctl start_ ...

  6. KM算法 带权二分匹配 O(n^3)

    #include<cstdio> #include<cstdlib> #include<cstring> #include<string> #inclu ...

  7. 「THUWC 2017」在美妙的数学王国中畅游

    这个题目很明显在暗示你要用泰勒展开. 直接套上去泰勒展开的式子,精度的话保留12项左右即可. 分别维护每一项的和,可能比较难写吧. 然后强行套一个LCT就没了.

  8. P4557 [JSOI2018]战争

    首先可以题目描述的两个点集是两个凸包,分别设为A和B. 考虑一个向量w不合法的条件. 即存在b+w=a,其中a属于A,b属于B. 也就是a-b=w. 即对b取反后和a的闵可夫斯基和. 求出闵可夫斯基和 ...

  9. Maximum Questions CodeForces - 900E (字符串,dp)

    大意:给定长$n$的字符串$s$, 只含'a','b','?', '?'可以替换为任意字符, 在给定长$t$的字符串, "ababab...", 求替换尽量少的'?', 使得$s$ ...

  10. Hadoop 2.7.3 完全分布式维护-简单测试篇

    1. 测试MapReduce Job 1.1 上传文件到hdfs文件系统 $ jps Jps SecondaryNameNode JobHistoryServer NameNode ResourceM ...