文件准备:
mysql二进制安装包:mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz
配置文件:my.cnf
【注意,以下步骤部分有依赖关系,不要随意颠倒】
0、操作系统配置
--关闭Selinux。编辑参数SELINUX,取值为disabled,保存退出
vi /etc/selinux/config
SELINUX=disabled
--关闭防火墙
RedHat6/CentOS6系统:
service iptables stop
service ip6tables stop
service NetworkManager stop
chkconfig iptables off
chkconfig ip6tables off
chkconfig NetworkaMnager off
RedHat7/CentOS7系统:
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl stop NetworkManager
systemctl disable NetworkManager
修改系统限制参数
vi /etc/security/limits.conf
在文件末尾添加下列内容
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
重启操作系统生效上述配置
1、软件包安装
--已有包卸载
rpm -qa | grep -i mysql | xargs rpm -e --nodeps
rpm -qa | grep -i mariadb | xargs rpm -e --nodeps
--删除现有的mysql用户信息
userdel -r mysql
--保证yum源可用
yum clean all
yum repolist
--依赖包安装
yum -y install perl-Digest-MD5 perl-DBD-MySQL perl-Time-HiRes
2、用户创建
--mysql用户创建
useradd mysql
3、二进制安装包解压
安装目录:/usr/local/mysql
mysql默认安装目录:/usr
【注意】mysql安装目录不要修改,建议使用/usr/local/mysql
tar -xzvf mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz -C /usr/local
ln -s /usr/local/mysql-5.6.25-linux-glibc2.5-x86_64 /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
4、mysql数据目录创建
数据目录:/data/mysql。根据实际确定
mysql默认数据目录:/var/lib/mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
chmod 755 /data/mysql
【注意】生产环境中根据操作系统磁盘挂载情况确定mysql数据库数据文件存放位置,一般都是高速大容量磁盘挂载目录。
5、配置文件准备
cp .../my.cnf /etc/my.cnf
在配置文件中,数据目录为/data/mysql,如果修改了数据目录,则将配置文件中所有的/data/mysql替换为第4步中的目录路径
变量修改:
innodb_buffer_pool_size,该参数建议设置成物理内存的50%-70%,例如:服务器内存128G,则可取值90G。
server-id,在存在主从复制环境中,不同机器上安装应该保证该参数取不同值。单实例环境无所谓。建议取值方式:IP小数点后数值拼接上端口。
例如:服务器IP为192.168.32.234,配置文件中参数port为3378,则server-id参数取值为:2343378
6、初始化数据
--mysql5.6
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --defaults-file=/etc/my.cnf --user=mysql
--basedir :安装目录
--datadir :数据目录
--defaults-file :默认配置文件
--mysql5.7
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=mysql
7、添加服务自启动
mysql为自定义服务名称,有时候也自定义命名为mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql
chkconfig --add mysql
service mysql start/stop
*/ 若有报错提示创建不了pid,可能是因为要清空/data/mysql(这个是我操作的时候遇到的问题)/*
8、环境变量设置
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile
--生效变量设置
source /etc/profile
9、数据库安全设置。
mysql5.6设置,mysql5.7无需设置
root用户登录之后运行下列语句即可,其中123456为root用户密码,可根据实际情况修改
delete from mysql.user where host!='localhost' or user!='root';
set password=password('123456');
flush privileges;