超详细的MySQL5.6安装

一、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   # 本次不使用默认端口,默认端口3306

basedir=/usr/local/mysql5.6

datadir=/data/mysql/mysql4406/data

socket=/data/mysql/mysql4406/tmp/mysql4406.sock

log-error=/data/mysql/mysql4406/logs/mysqld4406.logpid-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及后续版本,且持续关注新版本信息。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,451评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,172评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,782评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,709评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,733评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,578评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,320评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,241评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,686评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,878评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,992评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,715评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,336评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,912评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,040评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,173评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,947评论 2 355

推荐阅读更多精彩内容