CentOS6.8下二进制安装mysql5.7
一、环境描述
系统: CentOS6.8_x86_64
mysql: mysqlmysql-5.7.22
安装包:mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz #注二进制安装包
安装包地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
注:二进制包的话Select Operating System:这里勾选Linux-Generic
二、将mysql二进制包上传到服务器并解压
先创建/data,然后将安装包上传到这里
# mkdir /data
解压安装包到/data目录
# tar zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /data #注意如果需要解压到指定的目录需要加-C参数
更改文件夹名
# mv /data/mysql-5.7.22-linux-glibc2.12-x86_64 /data/mysql-5.7.22
三、安装依赖包,使用yum安装,故前提条件是网络源的yum方式可用
# yum -y install libaio
四、创建mysql用户和组
# groupadd mysql
# useradd -g mysql mysql
配置数据库目录
数据目录: /data/mysql-5.7.22/data
参数文件my.cnf: /data/mysql-5.7.22/etc/my.cnf
错误日志log-error: /data/mysql-5.7.22/log/mysql_error.log
二进制日志log-bin: /data/mysql-5.7.22/log/mysql_bin.log
慢查询日志slow_query_log_file: /data/mysql-5.7.22/log/mysql_slow_query.log
套接字socket文件: /data/mysql-5.7.22/run/mysql.sock
pid文件: /data/mysql-5.7.22/run/mysql.pid
注:其中的mysql-5.7.22尽量和安装的mysql版本号一致,便宜管理。
-
# mkdir -p /data/mysql-5.7.22/{data,log,etc,run}
-
# touch /data/mysql-5.7.22/log/{mysql_error.log,mysql_bin.log,mysql_slow_query.log}
-
# chown -R mysql:mysql /data/mysql-5.7.22
-
# chmod 750 /data/mysql-5.7.22/{data,log,etc,run}
五、配置环境变量
# echo "export PATH=$PATH:/data/mysql-5.7.22/bin" >> /etc/profile
# source /etc/profile
六、配置my.cnf文件
-
# touch /data/mysql-5.7.22/etc/my.cnf
-
# chown mysql:mysql /data/mysql-5.7.22/etc/my.cnf
[client] port = 3306 socket = /data/mysql-5.7.21/run/mysql.sock [mysqld] port = 3306 socket = /data/mysql-5.7.21/run/mysql.sock pid_file = /data/mysql-5.7.21/run/mysql.pid datadir = /data/mysql-5.7.21/data default_storage_engine = InnoDB max_allowed_packet = 128M max_connections = 2048 open_files_limit = 65535 skip-name-resolve lower_case_table_names=1 character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4' innodb_buffer_pool_size = 128M innodb_log_file_size = 128M innodb_file_per_table = 1 innodb_flush_log_at_trx_commit = 0 key_buffer_size = 16M log-error = /data/mysql-5.7.21/log/mysql_error.log log-bin = /data/mysql-5.7.21/log/mysql_bin.log slow_query_log = 1 slow_query_log_file = /data/mysql-5.7.21/log/mysql_slow_query.log long_query_time = 5 tmp_table_size = 16M max_heap_table_size = 16M query_cache_type = 0 query_cache_size = 0 server-id=1
七、初始化
# mysqld --initialize --user=mysql --basedir=/data/mysql-5.7.22 --datadir=/data/mysql-5.7.22/data
此时会生成一个root临时登录密码,在mysql_error.log文件,
# grep 'temporary password' /data/mysql-5.7.22/log/mysql_error.log
八、配置服务
# cp /data/mysql-5.7.22/support-files/mysql.server /etc/init.d/
# mv /etc/init.d/mysql.server /etc/init.d/mysqld
修改mysqld文件
# vi /etc/init.d/mysqld
将basedir和datadir值修改如下,46和47行
basedir=/data/mysql-5.7.22
datadir=/data/mysql-5.7.22/data
加入服务
# chkconfig --add mysqld
设置开机自动启动和查看
# chkconfig mysqld on
# chkconfig mysqld --list
启动服务
# service mysqld start
查看mysql服务状态
# service mysqld status
九、修改mysqlroot密码
# mysql -uroot -p临时密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
mysql> flush privileges;
mysql> exit
重新使用修改后的密码登录
# mysql -uroot -p
然后输入临时密码
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
如果能查出如上的信息,表示安装成功。