Mysql安装
一、准备工作
1、下载MySQL
二、环境检查
1、检查是否安装过MySQL
rpm -qa | grep myql
mysql-community-common-5.6.30-2.el7.x86_64
mysql-community-release-el7-5.noarch
mysql-community-libs-5.6.30-2.el7.x86_64
mysql-community-server-5.6.30-2.el7.x86_64
mysql-community-client-5.6.30-2.el7.x86_64
2、如果存在MySQL安装文件,则执行下面代码卸载已存在的MySQL
yum remove mysql-community-common-5.6.30-2.el7.x86_64
yum remove mysql-community-release-el7-5.noarch
3、删除系统中MySQL相关配置或文件
find / -name mysql
/usr/share/mysql
/var/lib/mysql
## 删除所有MySQL目录
rm -rf /usr/share/mysql
如果/etc/my.cnf 如果存在请删除
这样MySQL就卸载成功了
4、检查是否安装了 mariadb
rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
## 如果存在 mariadb 就执行下面命令进行删除,避免与我们要安装的MySQL产生冲突:
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
5、检查是否安装了 libaio
rpm -qa |grep libaio
libaio-0.3.109-13.el7.x86_64
## 如果没有安装libaio执行下面命令进行安装:
yum install libaio
三、开始安装MySQL
1、上传、解压、重命名
## 上传下载的包到指定目录 如:/home/dev/
# 解压到 /usr/local/
cd /home/dev/ && tar -zxvf mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
# 重命名
mv /usr/local/mysql-5.7.42-linux-glibc2.12-x86_64/ /usr/local/mysql
2、为MySQL添加用户和用户组
# 添加用户组mysql
groupadd mysql
# 添加用户mysql并设置用户组为mysql, /bin/false mysql使用最严格的禁止登录选项,一切服务都不能用
useradd -r -g mysql -s /bin/false mysql
3、创建MySQL相关目录
# mysql-files目录为secure_file_priv系统变量的值提供了一个方便的位置,该变量将导入和导出操作限制在特定的目录
cd /usr/local/mysql && mkdir mysql-files
## 创建data数据库目录:
mkdir data
4、修改当前目录 /usr/local/mysql
下的所有目录用户为mysql
chown -R mysql:mysql ./
5、初始化MySQL
## A temporary password is generated for root@localhost: qdltjc):A1Gu
./bin/mysqld --initialize --user=mysql
四、配置MySQL
1、将MySQL服务加入到系统服务
cp ./support-files/mysql.server /etc/init.d/mysql.server
2、环境变量配置
vim /etc/profile
export PATH=$PATH:/usr/local/mysql/bin
source /etc/profile
3、启动MySQL
/usr/local/mysql/bin/mysqld_safe &
ps aux | grep mysqld
五、登录MySQL
## 初始化Mysql时会有一个密码
mysql -h 127.0.0.1 -P 3306 -uroot -p
1、修改默认密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
ALTER USER 'root'@'localhost' IDENTIFIED BY '2wsx@WSX';
2、开启mysql远程登录
grant all privileges on *.* to 'root'@'%' identified by '2wsx@WSX' with grant option;
flush privileges;
3、防火墙配置
firewall-cmd --zone=public --add-port=3306/tcp --permanent && firewall-cmd --reload && firewall-cmd --list-ports
六、Mysql配置文件my.cnf
1、查看Mysql启动时是否使用了指定目录的my.cnf
ps aux|grep mysql|grep 'my.cnf'
#如果命令没有输出,则表示没有指定配置文件
2、查看mysql默认读取my.cnf的目录,并查看是否有文件
mysql --help|grep 'my.cnf' |grep / |xargs ls
## 如果文件都不存在,则表示Mysql启动时没有指定配置文件,使用全默认配置
# 如果需要修改配置,可以在mysql默认读取的目录中,创建一个my.cnf文件(例如:/etc/my.cnf),把需要修改的配置内容写入,重启mysql后即可生效。
3、修改配置
vim /etc/my.cnf
#服务器端配置
[mysqld]
#包含的配置文件,可以把用户名和密码文件单独存放
##!include /usr/local/mysql/etc/mysqld.cnf
#监听端口
port = 3317
#监听的ip地址
bind-address = 0.0.0.0
## 表名大小写配置
lower_case_table_names=1
## 服务所能处理的请求包的最大大小以及服务所能处理的最大的请求大小(当与大的BLOB 字段一起工作时相当必要),
max_allowed_packet = 64M
## 指定MySQL允许的最大连接进程数
max_connections=1000
##
innodb_buffer_pool_size=2G
4、查找Mysql服务文件
find / -name mysql.server
/usr/local/mysql/support-files/mysql.server
## 关闭Mysql
/usr/local/mysql/support-files/mysql.server stop
## 启动Mysql
/usr/local/mysql/bin/mysqld_safe &