1. 文档说明
简述mysql数据库基础安装配置手册,性能调优需要结合my.cnf的参数进行调优,将在其他文档中进行介绍,安装配置需要注意mysql软件介质目录和数据目录的规划。
2. 参考文档
mysql reference手册
3. 系统准备
操作系统:centos 6.5(mini desktop安装)
mysql:mysql 5.7.{16,17,18}
Item | Item Content |
---|---|
IP | 192.168.4.192 |
HOSTNAME | node2.mono |
DATA DIR | /mysql/data |
BINLOG DIR | /mysql/binlog |
MY.CNF DIR | /etc/my.cnf |
Notes:mysql数据库对目录结构并无要求,操作中使用结构清晰的目录方便理解和操作简便性;除了RPM包安装不能使用自定义MYSQL_HOME,其他安装配置方式都可以自定义MYSQL_HOME。
5. RPM包安装
4.1 安装介质准备
下载地址:https://dev.mysql.com/downloads/mysql/
4.2 系统用户创建
groupadd -g 270 mysql
useradd -u 271 -g mysql -s /bin/bash -d /home/mysql -m mysql
4.3 相关目录创建
mkdir -p /mysql/{data,binlog}
5.4 mysql安装配置
上传mysql介质
cd /root
sftp> put mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar
解压安装介质
mkdir ~/temp
tar -xvf mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar -C ~/temp
检查是否已有mysql组件
[root@node1 ~]# rpm -qa | grep mysql
mysql-libs-5.1.71-1.el6.x86_64
#卸载已经存在的mysql组件
rpm -e mysql-libs-5.1.71-1.el6.x86_64 –nodeps
安装mysql组件
cd ~/temp
[root@node1 temp]# ls -l
total 459224
-rw-r--r-- 1 7155 31415 23844312 Nov 30 00:29 mysql-community-client-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 335508 Nov 30 00:29 mysql-community-common-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 3705436 Nov 30 00:29 mysql-community-devel-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 39087268 Nov 30 00:29 mysql-community-embedded-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 135718844 Nov 30 00:30 mysql-community-embedded-devel-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 2175836 Nov 30 00:30 mysql-community-libs-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 1723224 Nov 30 00:30 mysql-community-libs-compat-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 158856732 Nov 30 00:31 mysql-community-server-5.7.17-1.el6.x86_64.rpm
-rw-r--r-- 1 7155 31415 104780636 Nov 30 00:32 mysql-community-test-5.7.17-1.el6.x86_64.rpm
#不需要安装全部的rpm包,rpm包安装时有一定的先后顺序
rpm -ivh mysql-community-common-5.7.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.17-1.el6.x86_64.rpm
修改配置my.cnf,在使用mysql时,由于rpm包安装产生的文件分散在其他目录,因此在配置my.cnf指定log-error,pid-file等这些参数,在实际生产环境中,还是建议把这些重要的运行文件放在指定的目录,简化实例管理的复杂性。
vi /etc/my.cnf
#添加修改以下内容
[mysqld_safe]
log-error=/mysql/mysqld.log
pid-file=/mysql/mysqld.pid
[mysqld]
datadir=/mysql/data
socket=/tmp/mysqld.sock
[client]
socket=/tmp/mysqld.sock
修改配置启动服务
vi /etc/init.d/mysqld
#添加修改以下内容
lockfile=/mysql/${prog}.loc
授权目录和文件
chown mysql.mysql -R /mysql
chown mysql.mysql -R /etc/my.cnf
5.5 环境变量设置
使用rpm包安装,不需要指定环境变量就可以使用mysql命令与实用工具。
5.6 mysql进程启动
在使用linux server时尽量不应当使用root用户来启动应用,因此这里使用mysql用户来启动mysql进程服务。在启动mysql服务时会自动根据/etc/my.cnf指定的参数进行数据初始化,启动过程中会生成一个临时性的密码在mysqld.log文件中。
su - mysql
service mysqld start
#注意临时生成的密码
[mysql@node1 ~]$ ps -ef | grep mysql
root 2024 1834 0 23:26 pts/1 00:00:00 su - mysql
mysql 2025 2024 0 23:26 pts/1 00:00:00 -bash
mysql 2206 1 0 23:26 pts/1 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/mysql/data --socket=/tmp/mysqld.sock --pid-file=/mysql/mysqld.pid --basedir=/usr --user=mysql
mysql 2407 2206 0 23:26 pts/1 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/mysql/data --plugin-dir=/usr/lib64/mysql/plugin --log-error=/mysql/mysqld.log --pid-file=/mysql/mysqld.pid --socket=/tmp/mysqld.sock
mysql 2460 2025 0 23:36 pts/1 00:00:00 ps -ef
mysql 2461 2025 0 23:36 pts/1 00:00:00 grep mysql
5.7 root密码修改
初次登陆mysql需要使用mysql服务初次启动生成的临时性密码。
su – mysql
cat /mysql/mysqld.log | grep password
mysql -uroot -p
mysql> alter user 'root'@'localhost' identified by 'Mysql*123';