2. centos上面安装 Mysql

1、Linux/UNIX 上安装 MySQL 介绍

Linux平台上推荐使用RPM包来安装Mysql, MySQL AB提供了以下RPM包的下载地址:
https://dev.mysql.com/downloads/mysql/

  • MySQL - MySQL服务器。你需要该选项,除非你只想连接运行在另一台机器上的MySQL服务器。
  • MySQL-client - MySQL 客户端程序,用于连接并操作Mysql服务器。
  • MySQL-devel - 库和包含文件,如果你想要编译其它MySQL客户端,例如Perl模块,则需要安装该RPM包。
  • MySQL-shared - 该软件包包含某些语言和应用程序需要动态装载的共享库(libmysqlclient.so*),使用MySQL。
  • MySQL-bench - MySQL数据库服务器的基准和性能测试工具。

2、检查是否安装了Mysql

检测系统是否自带安装 MySQL

bash 复制代码
rpm -qa | grep mysql

进行卸载:

bash 复制代码
rpm -e mysql  // 普通删除模式
rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

3. centos上面一键安装Mysql

3.1 方法1,去下载rpm包,安装

1、直接下载附件已经整理好的安装包

如果需要其他安装包,去下载rpm包网站:

https://pkgs.org/

2、解压缩包之后,进入压缩包目录,直接终端执行

rpm -Uvh *.rpm --nodeps --force

3、Mysql 安装好了,需要再设置密码等等信息

可以参考:安装mysql

3.2 方法2,使用脚本一键安装

前提下载好了mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar,保存如下代码到install.sh 文件,直接bash install.sh,就直接可以使用

bash 复制代码
#!/bin/bash
mkdir mysql_install
tar xf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar -C mysql_install
cd mysql_install

rpm -qa | grep mariadb
yum -y remove mariadb-libs
rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm

echo "----------install success!!!!"

systemctl start mysqld
sleep 1
systemctl enable mysqld
sleep 1
systemctl status mysqld


# 获取密码
#MYSQL_PASSWD=`cat /var/log/mysqld.log | grep password | head -1 | rev  | cut -d ' ' -f 1 | rev`

# 修改密码
password=`grep "password" /var/log/mysqld.log | head -n 1`
install_passwd=${password:91:103}
echo "install_passwd:"
echo ${install_passwd}

echo "[mysql]" >>  /etc/my.cnf
echo "user=root" >>  /etc/my.cnf
echo "password=\"${install_passwd}\"" >>  /etc/my.cnf

NEW_PASSWORD='xxxxxxx'
mysql --connect-expired-password  -e "alter user 'root'@'localhost' identified by '$NEW_PASSWORD';"

sed -i '$d' /etc/my.cnf
sed -i '$d' /etc/my.cnf
sed -i '$d' /etc/my.cnf

echo "----------change password success!!!!"
sleep 1

# mysql给root开启远程访问权限
mysql -uroot -p${NEW_PASSWORD} -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY  '$NEW_PASSWORD';flush privileges;"
echo "----------set  PRIVILEGES success!!!!"
sleep 1

# mysql开启binlog、和event、关闭ssl(mysql57默认开启了ssl,但是dts不支持ssl连接)
echo 'server_id=2' >> /etc/my.cnf
echo 'log_bin=mysql-bin' >> /etc/my.cnf
echo 'binlog_format=ROW' >> /etc/my.cnf
echo 'expire_logs_days=30' >> /etc/my.cnf
echo 'event_scheduler=ON' >> /etc/my.cnf
echo 'skip_ssl' >> /etc/my.cnf
systemctl restart mysqld

echo "----------set binlog success!!!!"
alias mysql='mysql -uroot -xxxxxxx'

参考:
MySQL 安装

相关推荐
Database_Cool_2 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
姜太小白3 小时前
【MySQL】 索引优化实战:解决 WHERE 等值 + IS NULL 查询,TEXT 字段报错 1167 的完整指南
数据库·mysql
DFT计算杂谈3 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
liuxiaowei34 小时前
【绝版教程】新版MySQL DBA高级实战进阶班 MySQL8.0 姜承尧-腾讯数据库总监
数据库·mysql·dba
Zhang~Ling4 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind4 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的森5 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
XMAIPC_Robot6 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
重生的黑客6 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice
sg_knight6 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db