前言:前面记录了Windows环境的MySQL的安装卸载及相关测试评估,这里记录下在Linux下MySQL的静默部署方式。当然还有更多的其他部署,大家可根据自身环境及学习来了解。
环境:
1、CentOS-7.9-x86_64-DVD-2009.iso
2、MySQL-5.7.42-linux-glibc2.12-x86_64
————————————————
什么是 MySQL
MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于Oracle 公司。MySQL 是一种关系型数据库管理系统,关系型数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL 特点
MySQL 是开源的,所以你不需要支付额外的费用。
MySQL 支持大型系统的数据库。可以处理拥有上千万条记录的大型数据库。
MySQL 使用标准的 SQL 数据语言形式。
MySQL 可以运行于多个系统上,并且支持多种语言。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
MySQL 存储数据量较大,32 位系统表文件最大可支持 4GB,64 位系统支持最大的表文件为 8TB。
MySQL 是可以定制的,采用了 GPL 协议,你可以修改源码来开发自己的MySQL系统。
MySQL版本
MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。
MySQL Enterprise Edition 企业版本,需付费,可以试用 30 天。
MySQL Cluster 集群版,开源免费。可将几个 MySQL Server 封装成一个 Server。
MySQL Cluster CGE 高级集群版,需付费。
————————————————
一、下载MySQL
1、Mysql官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html
##版本5.7的最新子版本
Mysql-5.7.42-linux-glibc2.12-x86_64
二、启动安装前检查及准备
1、检查系统是否已安装Mysql,返回值为空,代表没有安装Mysql
rpm -qa | grep mysql
2、执行rpm -qa | grep mariadb命令查看Centos7默认安装数据库mariadb
rpm -qa | grep mariadb
## mariadb-libs-5.5.68-1.el7.x86_64
3、执行rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64命令卸载默认数据库mariadb
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
4、再次执行rpm -qa | grep mariadb命令查看Centos7默认安装数据库mariadb是否卸载掉
rpm -qa | grep mariadb
5、检查mysql 用户组是否存在
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
6、创建mysql 用户组和用户
groupadd mysql
useradd -r -g mysql mysql
7、创建/data/mysql目录,更改mysql目录所有文件夹所属的用户组、用户以及权限
mkdir /data/mysql
chown -R mysql:mysql /data/mysql/
chown -R 755 /data/mysql/
三、上传到Linux系统并解压
1、上传MySQL数据库安装包,这里我就不用rz而是采用WinSCP这款FTP软件执行操作,上传完成后进行解压
tar -xvf mysql-5.7.40-linux-glibc2.12-x86_64.tar -C /data/mysql/
tar -xvf mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz
2、将解压后的包名修改为mysql5.7,便于操作配置
mv mysql-5.7.40-linux-glibc2.12-x86_64 mysql5.7
四、安装配置阶段
1、进入/data/mysql/mysql5.7/bin/目录,编译安装并初始化mysql,最后面会生成临时密码,记得保存后面启动mysql服务后登入必须重置密码才能做执行任何操作
##进入/data/mysql/mysql5.7/bin/目录
cd /data/mysql/mysql5.7/bin/
##初始化mysql
./mysqld --initialize --user=mysql --datadir=/data/mysql/mysql5.7/data --basedir=/data/mysql/mysql5.7
2、直接配置etc目录下的my.cnf 文件,并添加以下配置
vi /etc/my.cnf
[mysqld]
port = 3306
basedir =/data/mysql/mysql5.7/ ##安装位置
datadir=/data/mysql/mysql5.7/data ##数据存放位置
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
#表名大小写不明感,敏感为
lower_case_table_names=1
##授权
chmod -R 775 /etc/my.cnf
3、修改/data/mysql/mysql5.7/support-files/目录下的mysql.server文件,将其中的路劲改为你的安装路劲
vim /data/mysql/mysql5.7/support-files/mysql.server
五、启动MySQL
1、开启服务
/data/mysql/mysql5.7/support-files/mysql.server start
2、添加软连接并重启mysql 服务
MySQL 的软连接是指在操作系统中创建的一种特殊的文件,它的内容会指向另一个文件或目录.通过这种方式,可以在不同的位置创建多个软连接,从而将指向同一个文件或目录.这样,就可以通过不同的软连接访问同一个文件或目录,而无需知道它的真实位置。在 MySQL 中,软连接可以用来将数据文件移动到另一个位置,而无需修改 MySQL 的配置文件.这对于在服务器上维护 MySQL 数据库非常方便。开机自启是指在系统启动时,自动启动某些应用程序或服务.在 MySQL 中,可以通过设置开机自启来让 MySQL 服务在系统启动时自动启动.这样,可以避免手动启动 MySQL 服务的麻烦。
ln -s /data/mysql/mysql5.7/support-files/mysql.server /etc/init.d/mysql
ln -s /data/mysql/bin/mysql /usr/bin/mysql
service mysql restart
3、登录mysql ,密码就是前面初始化时生成的临时密钥
/data/mysql/mysql5.7/bin/mysql -u root -p
##或在/data/mysql/mysql5.7/bin/路径下启动
cd /data/mysql/mysql5.7/bin
./mysql -u root -p
4、进入后,重置初始化密码,以下两条命令都可执行
set password for root@localhost = password('test@123');
Query OK, 0 rows affected, 1 warning (0.00 sec)
或
alter user 'root'@'localhost' identified by 'test@123';
Query OK, 0 rows affected (0.00 sec)
以上本地mysql已安装完成。下述会很对各自需求进行扩展,比如设置开放远程连接以、开机服务自启以及防火墙开放端口等,如下:
1、开放远程连接
use mysql;
update user set user.host = '%' where user.user = 'root';
flush privileges;
2、设置开机自启
//将服务文件拷贝到init.d下,并重命名为mysqld
cp /data/mysql/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
##赋予可执行权限
chmod +x /etc/init.d/mysqld
##添加服务
chkconfig --add mysqld
3、如果开启防火墙,则需放开3306端口:
##开放3306端口命令
firewall-cmd --zone=public --add-port=3306/tcp --permanent
##配置立即生效
firewall-cmd --reload
以上,感谢学习交流指导。