Centos7安装配置MySql 5.6

首先下载MySql5.6的安装包,具体安装方式分为yum安装离线安装。在新版本的CentOS7中,默认的数据库已更新为了Mariadb,而非 MySQL。

1. 离线安装

下载MySql5.6 社区版安装包

网址:https://dev.mysql.com/downloads/mysql/

  1. 选择下载 之前的MySql GA 版本

  1. 选择相应版本号,所属操作系统,然后根据需要下载64位还是32位Linux通用安装包。

  1. 下载完成后将本地安装包上传到Linux服务器上。一般默认将mysql安装到/usr/local/mysql中,也可以指定某些特定的路径,但是mysql在liunx中默认会找/usr/local/路径,如果更改路径比较麻烦。这里就选择安装在这个路径/usr/local/mysql下。

创建路径/usr/local/mysql

[root@localhost ~]# mkdir /usr/local/mysql
  1. 创建mysql数据存放目录
[root@localhost ~]# mkdir /usr/local/mysql/mysqldb
  1. 将mysql-5.6.49-linux-glibc2.12-x86_64.tar.gz解压到/usr/local/mysql中:
[root@localhost ~]# tar -zxvf /usr/local/mysql/mysql-5.6.49-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql
[root@localhost ~]# rm -rf /usr/local/mysql/mysql-5.6.49-linux-glibc2.12-x86_64.tar.gz
  1. 将解压的目录下的所有目录放在/usr/local/mysql下:
[root@localhost ~]# cp -rf /usr/local/mysql/mysql-5.6.49-linux-glibc2.12-x86_64/* /usr/local/mysql/
[root@localhost ~]# rm -rf /usr/local/mysql/mysql-5.6.49-linux-glibc2.12-x86_64/
  1. 创建mysql用户组
[root@localhost ~]# groupadd mysql
  1. 创建MySQL用户但该用户不能登陆(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限)
[root@localhost ~]# useradd -r -g mysql -s /bin/false mysql
  1. 将创建的mysql用户加入到mysql组下,更改/usr/local/mysql下文件的拥有者为mysql
[root@localhost ~]# chown -R mysql:mysql /usr/local/mysql/
  1. 创建MySQL初始化配置文件,vim /etc/my.cnf,把[mysql-safe去掉]
[root@localhost ~]# vim /etc/my.cnf

my.cnf文件修改样本

# [mysqld]
# datadir=/var/lib/mysql
# socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
# symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd [mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 [mysqld]
skip-name-resolve
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/mysqldb
# 允许最大连接数
max_connections=10000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB lower_case_table_name=1 max_allowed_packet=16M [client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8 # [mysqld_safe]
# log-error=/var/log/mariadb/mariadb.log
# pid-file=/var/run/mariadb/mariadb.pid #
# include all files from the config directory
#
!includedir /etc/my.cnf.d
  1. 进入安装mysql软件目录
[root@localhost ~]# cd /usr/local/mysql
  1. 修改当前目录拥有着为mysql用户
[root@localhost mysql]# chown -R mysql:mysql ./
  1. 安装数据库
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/mysqldb/

注:若执行以上最后一个命令出现以下问题:

FATAL ERROR: please install the following Perl modules before executing
./scripts/mysql_install_db:Data::Dumper

解决方法 :安装autoconf库,此包安装时会安装Data:Dumper模块,安装完成重新执行上述最后一个命令

[root@localhost ~]# yum -y install autoconf

2. yum安装

执行 yum install mysql 命令只是更新Mariadb数据库,并不会安装 MySQL 。

  1. 首先查看已安装的 Mariadb 数据库版本。
[root@localhost ~]# rpm -qa|grep -i mariadb
  1. 卸载已安装的 Mariadb 数据库。
[root@localhost ~]# rpm -qa|grep mariadb|xargs rpm -e --nodeps
  1. 再次查看已安装的 Mariadb 数据库版本,确认是否卸载完成。
[root@localhost ~]# rpm -qa|grep -i mariadb
  1. 下载并安装MySQL官方的 Yum Repository。
[root@localhost ~]# wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
  1. 安装mysql57-community-release-el7-11.noarch.rpm包
[root@localhost ~]# rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装完成之后,会在 /etc/yum.repos.d/ 目录下新增 mysql-community.repo 、mysql-community-source.repo 两个 yum 源文件。

  1. 执行以下命令查看可用的 mysql 安装文件。
[root@localhost ~]# yum repolist all | grep mysql
  1. 安装mysql。
[root@localhost ~]# yum install mysql-server
  1. 检查mysql是否安装成功。
[root@localhost ~]# rpm -qa | grep mysql

3. 配置MySql

1. 授予my.cnf权限,权限方面最好不要配置为最高权限“777”,mysql担心这种最高权限文件被其他用户恶意修改,所以会忽略掉这个配置文件。这样mysql无法启动或重启。

  • my.cnf设置为root用户可读写,其他用户不可写.
[root@localhost ~]# chmod 644 /etc/my.cnf

2. 设置MySql开机启动

  • 将MySQL加入系统进程中
[root@localhost ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
  • 重启MySQL
[root@localhost ~]# service mysqld restart
  • 赋予可执行权限
[root@localhost ~]# chmod +x /etc/init.d/mysqld
  • 将mysqld服务加入到系统服务
[root@localhost ~]# chkconfig --add mysqld
  • 检查mysqld服务是否已经生效
[root@localhost ~]# chkconfig  --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  • 如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入
[root@localhost ~]# chkconfig --level 345 mysqld on
  • 以后可以使用service命令控制mysql的启动和停止
[root@localhost ~]# service mysqld start
[root@localhost ~]# service mysqld stop

3. 做软连接方便在命令窗口直接运行mysql命令

[root@localhost ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin

4. 配置MySql环境变量,配置环境变量 vim /etc/profile 最后加入:

[root@localhost ~]# vim /etc/profile
# 文件末尾加入 export PATH=$PATH:/usr/local/mysql/bin
# 使配置生效
[root@localhost ~]# source /etc/profile

5. 启动MySql,并修改登录密码

[root@localhost ~]# cd /usr/local/mysql/support-files/
[root@localhost support-files]# ./mysql.server start
  • 修改随机登录密码,设置允许远程登录
[root@localhost ~]# mysql -uroot -p

登录数据库,初始不用输入密码,直接按回车进入MySql命令界面

  • 在MySql命令窗口修改随机登录密码
mysql>use mysql;
mysql>update user set password=password('123456') where user='root';
mysql>flush privileges;
  • 设置允许远程登录
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

6. 为防火墙firewalld添加开放端口

  • 添加mysql端口3306
[root@localhost ~]# irewall-cmd --zone=public --add-port=3306/tcp --permanent
  • 然后重新启动防火墙
[root@localhost ~]# firewall-cmd --reload

7. MySql启动方式

[root@localhost ~]# systemctl start mysqld.service 		#启动 mysql
[root@localhost ~]# systemctl restart mysqld.service #重启 mysql
[root@localhost ~]# systemctl stop mysqld.service #停止 mysql
[root@localhost ~]# systemctl enable mysqld.service #设置 mysql 开机启动

Centos7安装配置MySQL 5.6的更多相关文章

  1. Centos7 安装配置Mysql

    Centos7默认自带的mariadb数据库,它是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL ...

  2. CentOS7 安装配置 MySQL 5.7

    1. 下载 yum 源文件 mysql80-community-release-el7-2.noarch.rpm https://dev.mysql.com/downloads/repo/yum/ 2 ...

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

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

  4. CentOS7 安装配置备忘录

    1. 安装 epel 源 $ sudo yum install epel-release.noarch 如果想强制服务器使用 tuna 的镜像,可以如下修改 /etc/yum.repos.d/epel ...

  5. CentOS7 安装配置笔记

    CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...

  6. 详解在Linux中安装配置MySQL

    最近在整理自己私人服务器上的各种阿猫阿狗,正好就顺手详细记录一下清理之后重装的步骤,今天先写点数据库的内容,关于在Linux中安装配置MySQL 安装环境 CentOS7 + MySQL5.7 下载安 ...

  7. Centos7安装配置gitlab

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

  8. CentOS6.5下安装配置MySQL

    CentOS6.5下安装配置MySQL,配置方法如下: 安装mysql数据库:# yum install -y mysql-server mysql mysql-deve 查看mysql-server ...

  9. (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

    Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...

  10. Windows平台安装配置mysql数据库

    Windows平台安装配置mysql数据库 作者:Eric 微信:loveoracle11g 去下载mysql软件 https://www.mysql.com/downloads/ https://d ...

随机推荐

  1. 创建一个HashMap实例,该实例具有足够高的“初始容量”

    创建一个HashMap实例,该实例具有足够高的"初始容量" /** * 创建一个{@link HashMap}实例,该实例具有足够高的"初始容量" * * @p ...

  2. ant design upload组件的beforeUpload阻止默认上传行为

    const onImportExcel = (file) => { return new Promise(async (resolve, reject) => { ... //要执行的语句 ...

  3. springboot启动图标banner

    将springboot项目中的banner.txt文件替换成下面代码即可 ${AnsiColor.BRIGHT_YELLOW} ┏━┓ ┏━┓ ┏┛ ┻━━━━━┛ ┻┓ ┃ ┃ ┃ ━ ┃ ┃ ┳┛ ...

  4. 去除input框相关样式,只显示内容

    <input /> css代码: .edit-input{ /* width: 20px; */ height: -webkit-fill-available; background: i ...

  5. FCC 高级算法题 验证电话号码

    Validate US Telephone Numbers 如果传入字符串是一个有效的美国电话号码,则返回 true. 用户可以在表单中填入一个任意有效美国电话号码. 下面是一些有效号码的例子(还有下 ...

  6. ROM,RAM,内存

    ROM是用来存放最基本的程序的,不是系统程序(windows),而是主板自带的最基本的程序, 无法被删除,更改.只能读取. 操作系统是放在硬盘里的,在开机时会在内存中加载,所以windows7比win ...

  7. Java包机制与文档注释

    Java包机制与文档注释 包机制 为了更好地组织类,java提供包机制,用于区分类名的命名空间 包语句的语法: package pkg1.pkg2.pkg3...; // 必须在文件第一行 一般用公司 ...

  8. 2.20 Q_Learning 和Sarsa 的区别

    二者都是基于Qtable的算法,其中Qlearning属于off-policy,Sarsa属于on-policy. 算法伪代码: 二者主要区别是更新Qtable的方式不同:

  9. HTML5的语义标签

    H5新增了很多标签,也更加语义化了,但是除了header.footer.nav等,其他的还真的没有去了解过,今天整理一下H5新增的语义化标签. Header: 不用多说,就是定义头部,可以多个. Fo ...

  10. 修改word文档中已有的批注者名称

    前言 https://blog.csdn.net/hyh19962008/article/details/89430548 word中可以通过修改用户的信息实现新建的批注者显示不同的名称,但是对于文档 ...