1. 测试安装的系统是Linux Cent Os 6.5 (2核、2G内存)
2. Mysql版本为5.7.15
3. 安装根目录 /opt/mysql
4. 数据文件目录 /opt/mysql/data
6. 配置文件目录 /etc/my.cnf
Mysql5.7的配置参数和之前的版本相比有些参数被标志为过时或不在支持,
有些参数被优化,之前建议设置的数值可能现在已经变成默认值,
建议设置时参考官方文档。
本次安装的配置文件具体参考 MySql5.7 配置文件 my.cnf 设置
安装包下载网址:http://dev.mysql.com/downloads/mysql/5.7.html#downloads
选择二进制格式(Generic)的安装包,如:mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz
具体步骤参考如下:
[root@i-testdb opt]# pwd
/opt
[root@i-testdb opt]# tar -xvfmysql-5.7.15-linux-glibc2.5-x86_64.tar.gz
[root@i-testdb opt]# mvmysql-5.7.15-linux-glibc2.5-x86_64 mysql
[root@i-testdb opt]# groupadd mysql
[root@i-testdb opt]# useradd -g mysql mysql
[root@i-testdb opt]# cd ./mysql
[root@i-testdb mysql]# chown -R mysql:mysql .
#查看必要的依赖rpm包是否安装,如果没有安装采用yum安装
[root@i-testdb mysql]# yum search libaio
[root@i-testdb mysql]# yum install libaio
#添加环境变量,在/etc/profile文件内容底部添加如下两行信息
[root@i-testdb mysql]# vi /etc/profile
# mysql env
export PATH=$PATH:/opt/mysql/bin
# 将自己设置的配置文件my.cnf拷贝到 /etc/my.cnf,初始化时将使用该配置文件
# [root@i-testdb mysql]# cp my.cnf /etc/my.cnf
#初始化mysql数据库
[root@i-testdb mysql]#
./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data/
#mysql5.7新的初始化方式,会给root@localhost生成随机的密码,初始化输出相应的信息。
#如果没发现命令行有输出信息,可以根据my.cnf配置参数log_error查看error.log文件中的信息。
#如果没有【Error】级别的错误且输出类似于下面一段信息则初始化成功:
[Note] A temporary password is generated for root@localhost: 02dqBq_%J/ni
[root@i-testdb mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld
#修改/etc/init.d/mysqld 文件指定 basedir和 datadir和my.cnf中配置的一致
[root@i-testdb mysql]# vi/etc/init.d/mysqld
...
# overwritten by settings in the MySQL configuration files.
basedir=/opt/mysql/
datadir=/opt/mysql/data/
# Default value, in seconds, afterwhich the script should timeout waiting
...
# 启动mysql 有以下两种方式:
[root@i-testdb mysql]# /etc/init.d/mysqld start
#或者
[root@i-testdb mysql]# service mysqld start
#初次登陆数据库,需要为root用户修改密码才能进行数据库的操作
[root@i-testdb mysql]# mysql -uroot -p
Enter password:
# 输入刚刚初始化生成的临时密码,例如上面的02dqBq_%J/ni
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executingthis statement.
#要求必须修改root的密码
mysql> set password =’your password’;
#如果你的socke文件目录不在/tmp下,建议为sock文件创建在/tmp文件目录下单链接
[root@i-testdb mysql]# ln -s /opt/mysql/mysql.sock /tmp/mysql.sock
至此,mysql5.7.15二进制安装完成!