CentOS 6.8下MySQL 5.7.14二进制安装详解

Linux环境:CentOS 6.8 32位
本教程安装MySQL是通过编译过的二进制文件进行安装。是不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz的压缩文件

1、下载

CentOS 6.8下MySQL 5.7.14二进制安装详解

2、解压缩到/usr/local/下面,mysql的主目录命名为mysql

如果是.tar.gz文件直接解压  我下载的是.tar 文件 执行

[root@localhost local]# tar -xvf mysql-5.7.16-linux-glibc2.5-i686.tar

  [root@localhost local]# tar xvf mysql-5.7.16-linux-glibc2.5-i686.tar.gz

解压后的文件夹重命名

CentOS 6.8下MySQL 5.7.14二进制安装详解

[root@localhost local]# mv mysql-5.7.16-linux-glibc2.5-i686 /mysql

3、在mysql下面创建data数据库文件目录

[root@localhost local]# mkdir mysql/data

4、创建mysql的用户组和用户,并对mysql目录设置用户组和用户

[root@localhost local]# groupadd mysql

[root@localhost local]# useradd mysql -g mysql

[root@localhost local]# cd mysql

[root@localhost mysql]# pwd

/usr/local/mysql

[root@localhost mysql]# chown -R mysql .

[root@localhost mysql]# chgrp -R mysql .


5、初始化mysql并启动mysql服务

[root@localhost mysql]# cd /usr/local/mysql/bin

[root@localhost bin]# yum install libaio

已加载插件:fastestmirror, refresh-packagekit, security

设置安装进程

Loading mirror speeds from cached hostfile

* base: mirrors.opencas.cn

* extras: mirrors.btte.net

* updates: mirrors.btte.net

包 libaio-0.3.107-10.el6.i686 已安装并且是最新版本

无须任何处理

[root@localhost bin]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data

2016-08-11 12:00:25 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize

2016-08-11 12:00:31 [WARNING] The bootstrap log isn't empty:

2016-08-11 12:00:31 [WARNING] 2016-01-09T04:00:29.262989Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead

2016-08-11T04:00:29.264643Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)

2016-08-11T04:00:29.264653Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)


[root@localhost bin]# cd /usr/local/mysql/support-files

[root@localhost support-files]# ./mysql.server start

Starting MySQL....                                        [确定]

以上操作流程如下图

CentOS 6.8下MySQL 5.7.14二进制安装详解

6、登录mysql,此版本最新版不许空密码登录,实际上有个初始化密码保存在/root/.mysql_secret这个文件里面,用这个密码第一次登录后,再修改密码。因此先cat查看下初始化密码(随机的,每次安装看到的密码都不一样):

[root@localhost support-files]# cat /root/.mysql_secret
# Password set for user 'root@localhost' at 2016-10-30 21:17:12
q<.yhitwgg!V
[root@localhost support-files]# cd /usr/local/mysql/bin
[root@localhost bin]# mysql -uroot -p


此处特别说明 如果出现-bash: mysql: command not found 错误

出下这种错误一般是由于安装了一键安装脚本后没有对命令做链接,可以用下面的命令找到mysql命令的绝对路径:

find / -name mysql

假设查找到的路径为/usr/local/mysql/bin/mysql,可以使用下面的命令设置一个链接:

ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

然后就可以使用mysql命令了。

利用初始化密码q<.yhitwgg!V登录mysql  操作如下图:

CentOS 6.8下MySQL 5.7.14二进制安装详解

显示登录成功,可以执行mysql命令操作了!

未配置的情况下每次登录需要进入bin目录下操作:

7、 复制配置文件

[root@localhost mysql] cp support-files/my-medium.cnf /etc/my.cnf

此处特别说明 如果出现 下面这种错误

找一下my-default.cnf 文件的位置

[root@localhost ~]# find / -name my-default.cnf

比如在(/usr/local/mysql/support-files/my-default.cnf)位置

作如下操作:
[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf

8. 将mysqld服务加入开机自启动项。

*首先需要将scripts/mysql.server服务脚本复制到/etc/init.d/,并重命名为mysqld。

[root@localhostmysql] cp support-files/mysql.server /etc/init.d/mysqld

*通过chkconfig命令将mysqld服务加入到自启动服务项中。

[root@localhost mysql]#chkconfig --add mysqld

*注意服务名称mysqld就是我们将mysql.server复制到/etc/init.d/时重命名的名称。

*查看是否添加成功

[root@localhost mysql]#chkconfig --list mysqld

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

9. 重启系统,mysqld就会自动启动了。

*检查是否启动

[root@localhost mysql]#netstat -anp|grep mysqld

tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2365/mysqld

unix 2 [ ACC ] STREAM LISTENING 14396 2365/mysqld /tmp/mysql.sock

*如果不想重新启动,那可以直接手动启动。

[root@localhost mysql]#service mysqld start

Starting MySQL.. SUCCESS!

10 运行客户端程序mysql,在mysql/bin目录中,测试能否连接到mysqld。

[root@localhost mysql]#/usr/local/mysql/bin/mysql -uroot -p

password:
Welcome to the MySQLmonitor. Commands end with ; or \g.

Your MySQL connection idis 2

Server version:5.5.29-log MySQL Community Server (GPL)

Copyright (c) 2000, 2012,Oracle and/or its affiliates. All rights reserved.

Oracle is a registeredtrademark of Oracle Corporation and/or its affiliates. Other names may betrademarks of their respective owners.

Type 'help;' or '\h' forhelp. Type '\c' to clear the current input statement.

mysql> quit

Bye

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/9f77ac68d5da917fb8ea21b6a19c8c69.html