centos安装mysql5.7 (docker环境)
- yum安装依赖
yum -y install libaio numactl
yum -y install openssl openssl-devel
如果要使用mysql的ssl加密通信则安装,否则跳过此步骤
- 前期准备工作
groupadd mysql
创建mysql组useradd -g mysql mysql -s /sbin/nologin
创建MySQL用户并且不让shell登录mkdir -p /usr/local/mysql/data && cd /usr/local/mysql
创建目录wget -c https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
下载mysql通用二进制包tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz && mv mysql-5.7.24-linux-glibc2.12-x86_64/* /usr/local/mysql && cd /usr/local/mysql
解压并且进入目录chown -R mysql:mysql /usr/local/mysql
修改mysql文件夹所属用户和组/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
初始化数据库/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
mysql的ssl加密通信,如果不使用,则跳过此步骤
- 配置启动MySQL
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
创建unix服务vim /etc/init.d/mysqld
- 添加路径 在46行
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data vim /etc/my.cnf
将一下代码复制过去[mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/tmp/mysql.sock #不区分大小写(sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 这个简单来说就是sql语句是否严格) lower_case_table_names = 1 log-error=/var/log/mysqld.log pid-file=/usr/local/mysql/data/mysqld.pid
chkconfig --add mysqld
开机启动MySQLln -s /usr/local/mysql/bin/mysql /usr/bin
添加软连接/etc/init.d/mysqld start
启动MySQL服务mysql -uroot -p
登录MySQLalter user 'root'@'localhost' identified by '123456';
修改密码grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
授权MySQL的root用户可以在任意地址登录且能将自己权限分配给别人flush privileges;
刷新权限