开发者社区> 技术小胖子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

MySQL5.6--------基于CentOS6二进制包安装

简介:
+关注继续查看

1. 背景

   * MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。

   * MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

   * MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。


2. 选择的理由

   * 支持多种平台[AIX、FreeBSD、HP-UX、Linux、Mac OS、OpenBSD、Solaris、Windows......]

   * 支持并提供多语言API

   * 开源,采用了 GPL协议,可以修改源码来开发自己的 MySQL 系统

   * 支持标准SQL语句

   * 支持多种存储引擎

   * 使用广泛 [ 全球top20网站除微软的Live和Bing之外全部应用MySQL ]

wKioL1lOX5jQoVFpAAFaXeTnnpM723.jpg


3. MySQL安装方式

   * 二制包安装

   * 源码编译安装

   * 平台安装包,如rpm包[centos,redhat]或deb[debian,ubuntu]包


4. 环境 [关闭selinux]

1
2
3
4
5
6
7
8
[root@MySQL ~]# cat /etc/redhat-release 
CentOS release 6.9 (Final)
 
[root@MySQL ~]# uname -r
2.6.32-642.3.1.el6.x86_64
 
[root@MySQL ~]# getenforce 
Disabled


5. 安装

   * 下载MySQL5.6二进制包 [ 推荐从MySQL官方下载 ]

1
[root@MySQL ~]# wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz


   * 解压MySQL二进制包

1
[root@MySQL ~]# tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

 

   * 移动MySQL二进制包

1
[root@MySQL ~]# mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/


   * 创建软链接

1
[root@MySQL ~]# ln -s /usr/local/mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql


   * 创建 mysql 用户

1
[root@MySQL ~]# useradd -r -s /sbin/nologin mysql


   * 创建mysql数据库文件存放目录

1
[root@MySQL ~]# mkdir -p /data/mysql_data


   * 修改二进制包目录与数据目录所属用户与所属用户组

1
[root@MySQL ~]# chown mysql.mysql -R /usr/local/mysql-5.6.36-linux-glibc2.5-x86_64 /data/mysql_data


   * 复制默认配置文件至/etc/my.cnf

1
[root@MySQL ~]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf


   * MySQL初始化 [ 创建数据库相关文件 ] 看到两个OK并没有ERROR错误信息表明初始化成功

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
[root@MySQL ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data 
WARNING: The host 'MySQL' could not be looked up with /usr/local/mysql/bin/resolveip.
This probably means that your libc libraries are not 100 % compatible
with this binary MySQL version. The MySQL daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MySQL privileges !
 
Installing MySQL system tables...2017-06-24 03:57:47 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-06-24 03:57:47 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
2017-06-24 03:57:47 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.36) starting as process 20685 ...
2017-06-24 03:57:47 20685 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-06-24 03:57:47 20685 [Note] InnoDB: The InnoDB memory heap is disabled
2017-06-24 03:57:47 20685 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-06-24 03:57:47 20685 [Note] InnoDB: Memory barrier is not used
2017-06-24 03:57:47 20685 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-06-24 03:57:47 20685 [Note] InnoDB: Using Linux native AIO
2017-06-24 03:57:47 20685 [Note] InnoDB: Using CPU crc32 instructions
2017-06-24 03:57:47 20685 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-06-24 03:57:47 20685 [Note] InnoDB: Completed initialization of buffer pool
2017-06-24 03:57:47 20685 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
2017-06-24 03:57:47 20685 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB
2017-06-24 03:57:47 20685 [Note] InnoDB: Database physically writes the file full: wait...
2017-06-24 03:57:47 20685 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2017-06-24 03:57:49 20685 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2017-06-24 03:57:51 20685 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2017-06-24 03:57:51 20685 [Warning] InnoDB: New log files created, LSN=45781
2017-06-24 03:57:51 20685 [Note] InnoDB: Doublewrite buffer not found: creating new
2017-06-24 03:57:51 20685 [Note] InnoDB: Doublewrite buffer created
2017-06-24 03:57:51 20685 [Note] InnoDB: 128 rollback segment(s) are active.
2017-06-24 03:57:51 20685 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-06-24 03:57:51 20685 [Note] InnoDB: Foreign key constraint system tables created
2017-06-24 03:57:51 20685 [Note] InnoDB: Creating tablespace and datafile system tables.
2017-06-24 03:57:51 20685 [Note] InnoDB: Tablespace and datafile system tables created.
2017-06-24 03:57:51 20685 [Note] InnoDB: Waiting for purge to start
2017-06-24 03:57:52 20685 [Note] InnoDB: 5.6.36 started; log sequence number 0
2017-06-24 03:57:58 20685 [Note] Binlog end
2017-06-24 03:57:58 20685 [Note] InnoDB: FTS optimize thread exiting.
2017-06-24 03:57:58 20685 [Note] InnoDB: Starting shutdown...
2017-06-24 03:58:00 20685 [Note] InnoDB: Shutdown completed; log sequence number 1625977
OK
 
Filling help tables...2017-06-24 03:58:00 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-06-24 03:58:00 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
2017-06-24 03:58:00 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.36) starting as process 20731 ...
2017-06-24 03:58:00 20731 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-06-24 03:58:00 20731 [Note] InnoDB: The InnoDB memory heap is disabled
2017-06-24 03:58:00 20731 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-06-24 03:58:00 20731 [Note] InnoDB: Memory barrier is not used
2017-06-24 03:58:00 20731 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-06-24 03:58:00 20731 [Note] InnoDB: Using Linux native AIO
2017-06-24 03:58:00 20731 [Note] InnoDB: Using CPU crc32 instructions
2017-06-24 03:58:00 20731 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-06-24 03:58:00 20731 [Note] InnoDB: Completed initialization of buffer pool
2017-06-24 03:58:00 20731 [Note] InnoDB: Highest supported file format is Barracuda.
2017-06-24 03:58:00 20731 [Note] InnoDB: 128 rollback segment(s) are active.
2017-06-24 03:58:00 20731 [Note] InnoDB: Waiting for purge to start
2017-06-24 03:58:00 20731 [Note] InnoDB: 5.6.36 started; log sequence number 1625977
2017-06-24 03:58:00 20731 [Note] Binlog end
2017-06-24 03:58:00 20731 [Note] InnoDB: FTS optimize thread exiting.
2017-06-24 03:58:00 20731 [Note] InnoDB: Starting shutdown...
2017-06-24 03:58:02 20731 [Note] InnoDB: Shutdown completed; log sequence number 1625987
OK


6. 创建启动脚本

   * 复制启动脚本到service 服务管理目录下[ /etc/init.d ]

1
[root@MySQL ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld


   * 修改mysql启动脚本 [ /et/init.d/mysqld ]

1
2
basedir=/usr/local/mysql
datadir=/data/mysql_data


   * 添加脚本执行权限

1
[root@MySQL ~]# chmod +x /etc/init.d/mysqld


   * 添加进service服务管理

1
[root@MySQL ~]# chkconfig --add mysqld


7. 服务启动测试

   * 启动 MySQL 服务

1
2
3
[root@MySQL ~]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql_data/MySQL.err'.
 SUCCESS!


   * 查看服务是否启动并监听端口 [默认3306]

1
2
[root@MySQL ~]# netstat -lntp | grep 3306
tcp        0      0 :::3306           :::*             LISTEN        21366/mysqld


8. 连接测试并修改密码

   * 通过自带mysql客户端连接

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@MySQL ~]# /usr/local/mysql/bin/mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.36 MySQL Community Server (GPL)
 
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql>


   * 修改密码

1
2
mysql> set password = password('123456');
Query OK, 0 rows affected (0.00 sec)


   * 重新使用密码连接

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
mysql> quit
Bye
[root@MySQL ~]# /usr/local/mysql/bin/mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
 
[root@MySQL ~]# /usr /local/mysql/bin/mysql -p123456
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.36 MySQL Community Server (GPL)
 
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql>



9. 总结


以需求驱动技术,技术本身没有优略之分,只有业务之分。




      本文转自asd1123509133 51CTO博客,原文链接:http://blog.51cto.com/lisea/1941595,如需转载请自行联系原作者




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
CentOS 安装,更新 Git
查看 Linux 发行版名称和版本号,使用 yum 命令安装 git,默认安装的 Git 版本为 1.x 版本,而不是最新2.x。
50 0
centos7安装mysql5.6
centos7安装mysql5.6
1484 0
Centos6.5 mysql安装
cenos中安装软件使用yum进行安装,小米加步枪不如ak47. 第1步、yum安装mysql   yum -y install mysql-server第2步、设置开机启动   chkconfig mysqld on第3步、启动MySql服务 ...
839 0
Centos6.5 qt 安装
1,centos linux系统必须预先以安装x Server(KDE or GNOME) 2,wget http://download.qt-project.org/official_releases/qt/5.
1300 0
CentOS6.5下编译安装mysql5.6.19
http://www.cnblogs.com/xiongpq/p/3384681.html
521 0
21114
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载