前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >超详细的MySQL5.6安装

超详细的MySQL5.6安装

作者头像
July
发布2019-08-08 15:00:15
2.7K0
发布2019-08-08 15:00:15
举报

一、MySQL版本的选择

  • 推荐选择MySQL官方版本,且选择MySQL5.6以后的版本。
  • 如选择Percona版本(例如5.6版本使用线程池等),但在5.6版本以后,官方版MySQL集成了Percon之前的优化。
  • 不建议选择MariaDB:无INNODB;且核心代码较老
  • MySQL在5.6以后不断重构源码,安装包越来越大,功能和性能在持续改进

二、下载

MySQL官网:

https://www.mysql.com/

建议大家经常查看是否有更新及相关技术大牛文章

社区GA版下载地址:

https://www.mysql.com/

选择版本:例如Linux版本可以按照如下方式选择(版本、操作系统、操作系统版本)

下载完成后将其上传,如上传至/usr/local目录下。

三、安装

总体安装步骤概述如下:

  • 操作系统等相关配置设置
  • 安装依赖包
  • 创建用户
  • 修改配置文件、创建相关数据目录、日志目录等并授权
  • 运行安装命令,启动数据库
  • 配置环境变量、服务等(看需要)

1.操作系统等相关配置设置 查看CPU、内存、SSL版本、硬盘大小

# 查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看逻辑CPU的个数 cat /proc/cpuinfo| grep "processor"| wc -l # 查看CPU信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c # 查看内存: cat /proc/meminfo # 查看ssl版本 openssl version #查看硬盘大小 df -lh

修改防火墙

service iptables stop chkconfig iptables off

修改selinux

vim /etc/selinux/config SELINUX=disabled setenforce 0     ## 不重启机器生效

修改文件限制等

vim /etc/security/limits.conf * hard nofile 65535 * soft nofile 65535 或 ulimit -n 65535 (sudo sh -c "ulimit -a"检查)

修改控制文件

vim /etc/sysctl.conf kernel.sem=250 32000 100 128 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_fin_timeout = 30

2. 生产环境安装对应包

yum install -y epel-release yum install -y glibc gcc gcc-c++ openssl-devel autoconf automake cmake bison make ncurses-devel numactl numactl-devel yum install -y libtool-ltdl-devel* zlib* libxml* fiex* yum install -y libaio libaio-devel libmcrypt libmcrypt-devel mcrypt mhash

3.创建用户

groupadd mysql useradd -r -g mysql mysql

4.修改配置文件、创建相关数据目录、日志目录等并授权

# 切换到mysql安装包目录,并解压安装包

cd /usr/local tar -zxvf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz

# 创建软连接 (以便于后期升级、或安装多实例等),并修改权限

ln -s mysql-5.6.40-linux-glibc2.12-x86_64 mysql5.6

chown -R mysql . # 注意 .为当前目录的意思 chgrp -R root . # 注意 .为当前目录的意思 或直接2步合并 chown -R mysql:mysql .

# 创建数据目录、日志目录、配置文件目录及临时文件目录并授权

mkdir -p /data/mysql/mysql4406/{data,logs,etc,tmp} # 一次性创建多个目录,4406端口号(默认端口号为3306)

# 修改配置文件 (根据实际情况修改)

主要参数配置如下,生产环境需要根据实际情况修改,配置参数说明请参见下一篇文章

vi /data/mysql/mysql4406/etc/my4406.cnf

[mysqld]
server-id=4406                                  
port=4406
basedir=/usr/local/mysql5.6
datadir=/data/mysql/mysql4406/data
socket=/data/mysql/mysql4406/tmp/mysql4406.sock

log-error=/data/mysql/mysql4406/logs/mysqld4406.log
pid-file=/data/mysql/mysql4406/tmp/mysqld4406.pid
character-set-server=utf8
max_binlog_size =1G
log-bin=/data/mysql/mysql4406/logs/mysql-bin
binlog-format=row
expire_logs_days=7
sync_binlog=1
binlog_cache_size= 128M

[client]
port=4406
socket=/data/mysql/mysql4406/tmp/mysql4406.sock

# 修改权限

chown -R mysql:mysql /data/mysql/mysql4406

5. 安装MySQL

做完上面一系列准备工作后,终于迎来了MySQL安装操作

# 进入MySQL安装包所在目录,指定配置文件及用户进行安装

scripts/mysql_install_db --defaults-file=/data/mysql/mysql4406/etc/my4406.cnf --user=mysql

如出现OK且无其他错误信息,即安装成功

6. 配置服务

如果需要配置服务(如进行开机自启动等),可以进行配置,生产环境上如有多个实例等不建议如此配置

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

再将其中的basedir 、datadir路径及conf配置文件名等进行修改(如机器上只配置一个MySQL实例无需修改)

7. 开启MySQL

# 指定配置文件启动数据库(推荐),并在后台运行(执行下面命令时多次回车,专为小白而备注)

/usr/local/mysql5.6/bin/mysqld_safe --defaults-file=/data/mysql/mysql4406/etc/my4406.cnf &

# 服务方式启动(建议第一种方式,如此机器上只有一个mysql实例可以采用如下方式启动,多实例将在后续介绍)

/etc/init.d/mysqld start

8. 配置环境变量

(看需要,如不配置,则运行mysql相关命令需要输入全路径,建议配置)

vi /ect/profile # 末尾追加如下信息 export PATH=$PATH:/usr/local/mysql5.6/bin export PATH # 使环境变量生效 source /etc/profile

四、登录MySQL,修改密码,创建账号及授权等

1. 登录mysql

说明:mysql5.6版本安装后默认root密码为空,即不输入密码即可进入,如下所示,其中-uroot 指 登录用户名,-P4406 表示端口号为4406(默认3306,当为3306时 可以不输入),--socket=/data/mysql/mysql4406/tmp/mysql4406.sock 为指定套接字方式登录(--socket可以写作-S)

如果采用默认端口3306 ,则输入 mysql即可登录

2. 修改密码

# 修改当前账号密码

mysql> set password=password('123456'); mysql> flush privileges; # 刷新权限

3.创建账号并授权

# 创建超级管理员账号

mysql> grant all on *.* to root@'%' identified by '123456' with grant option;

说明:

all表示所有权限 root为账号名,‘%’表示所有主机可以连接(mysql账号有账号名及主机组成一个用户名,相同账号不用主机属于不同用户) identified by '123456' 表示设置密码为123456 with grant option 表示该账号有授权的权限,all权限不包含授权权限

# 创建查询账号

mysql> grant select on *.* to query@'%' identified by 'query'; mysql> flush privileges;

至此,mysql 5.6版本的安装,配置以及简单的创建账号等操作就完成了,具体日常操作命令将在后续推出。

说明

后续新建的mysql实例建议安装mysql5.7及后续版本,且持续关注新版本信息。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据库干货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档