CentOs 7 安装mysql5.7(二进制版本)

本文提供了一步一步安装 MySQL 5.7.12 版本的详细指南,包括从下载安装包到配置开机启动的全过程,并介绍了如何更改 root 密码及设置远程访问权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、下载二进制版本安装包。这里以 5.7.11 版本为例。
2、我装在/var/local目录下面,把下载的mysql包放在这个文件夹下面,执行以下命令,期间建立一个mysql的软连接。

# tar -zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
# ln -s mysql-5.7.12-linux-glibc2.5-x86_64 mysql 
# cd mysql

3、在mysql创建一个data目录,用于存放数据文件。执行以下命令

# groupadd mysql
# useradd -r -g mysql -s /bin/false mysql
# mkdir data
# chown -R root:root .
# bin/mysqld --initialize --user=mysql --basedir=/var/local/mysql --datadir=/var/local/mysql/data
# bin/mysql_ssl_rsa_setup --datadir=/var/local/mysql/data

(记住秘钥)

4、完成上述工作,配置my.cnf。修改 /etc/my.cnf。(也可从 /var/local/mysql/support-files 子目录下找到一个叫 my-default.cnf 的配置样例文件,复制到/etc)执行命令。

复制命令:
# cp /var/local/mysql/support-files/my-default.cnf /etc/my.cnf
修改命令:
# vi /etc/my.cnf

修改其中的内容如下:

basedir = /var/local/mysql
datadir = /var/local/mysql/data
log-error = /var/log/mysql-error.log

5、配置文件修改保存好后,就可以启动服务了,确保当前目录为 /var/local/mysql,然后运行以下命令:

# bin/mysqld_safe --user=mysql &

6、在mysql系统外,使用mysqladmin 。(进入到/var/local/mysql/bin)

# mysqladmin -u root -p password "newPwd"
Enter password: 【输入原来的密码】

7、在 Linux 下为了安全,默认是不允许 MySQL 服务器本机以外的机器访问 MySQL 数据库服务的,因此需要重新授权 root 账号。方便其他机器远程访问 MySQL 服务器,MySQL 命令如下:

mysql> grant all privileges on *.* to root@'%' identified by '1234';
mysql> flush privileges;

这样就可以允许从其他机器用 root 账号远程登录 MySQL 服务器了,可以用下面的 MySQL 命令来验证一下:

mysql> use mysql;
mysql> select host,user from user;
+———–+———–+
| host | user |
+———–+———–+
| % | root |
| localhost | mysql.sys |
| localhost | root |
+———–+———–+
3 rows in set (0.00 sec)

进行到这里,只能到指定文件夹来开启or关闭mysql服务,所以设置开机启动。

8、centos 配置mysql 开机启动命令

  • 运行mysql.server脚本,mysql.server脚本通过调用mysqld_safe启动服务器,该脚本可以通过参数start和stop指定启动还是关闭。mysql.server脚本在MySQL安装目录下的share/mysql目录中,如果是采用源码安装的MySQL,则可以在support-files目录里找到。如果想使用mysql.server,则必须把它复制到合适的运行级别目录中。
# cp mysql.server /etc/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
  • 如上配置之后,就可以利用以下命令启动和关闭MySQL实例。
# service mysqld start/stop
# /etc/init.d/mysqld start/stop
  • 使用chkconfig命令配置开机自动启动。
# chkconfig --add mysqld
# chkconfig mysqld on
  • 运行以下命令检查是否正确启用。
[root@bogon ~]# chkconfig --list mysqld
 mysqld             0:1:2:3:4:5:6:
  • 运行以下命令关闭MySQL。
# mysqladmin -p -u root shutdown

9、开启3306端口,centos7使用firewall命令更快捷。

[root@localhost /]$ firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost /]$ firewall-cmd --reload
### CentOS 7MySQL 5.7 二进制版本升级步骤 #### 准备工作 确保当前环境已经安装有较低版本MySQL 或 MariaDB。停止正在运行的服务以防止数据损坏。 ```bash systemctl stop mysqld ``` 备份现有数据库文件夹以及配置文件,以防新版本不兼容旧版的数据结构造成丢失重要资料[^2]。 #### 下载并解压新的 MySQL 版本 前往官方下载页面获取适用于 Linux/Generic 的 tarball 文件,并将其放置到 `/usr/local` 目录下。这里假设已下载完成名为 `mysql-5.7.x-linux-glibc2.12-x86_64.tar.gz` 的压缩包: ```bash tar zxvf mysql-5.7.x-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ cd /usr/local/ ln -sfn ./mysql-5.7.x-linux-glibc2.12-x86_64/ ./mysql chown -R root:mysql . chmod -R 750 mysql* ``` 上述命令创建了一个软链接指向最新解压出来的目录,方便后续管理不同版本之间的切换操作;同时调整权限使得只有特定用户组可以访问这些资源[^3]。 #### 初始化数据库实例 如果这是首次设置,则需要初始化一个新的实例来准备必要的表空间和其他内部对象: ```bash ./mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/var/lib/mysql ``` 对于已有实例的情况,请跳过此步以免覆盖原有数据。 #### 更新系统路径变量与服务脚本 为了让 shell 能够识别新版可执行程序的位置,编辑 `.bashrc` 添加如下内容至末尾处: ```bash export PATH=$PATH:/usr/local/mysql/bin source ~/.bashrc ``` 接着复制随附的服务启动模板到相应位置以便通过 systemd 进行控制: ```bash cp support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld ``` #### 修改 my.cnf 配置文件 依据实际情况修改位于 `/etc/my.cnf` 中的各项参数设定,特别是 socket 和 datadir 字段要匹配实际部署情况下的值。 #### 升级数据库架构 (仅当存在先前版本) 利用自带工具修复潜在差异问题,保证平稳过渡: ```sql mysql_upgrade -u root -p ``` 最后重启服务使更改生效: ```bash systemctl restart mysqld ss -ntlp | grep mysql ``` 确认监听端口正常开启即表示更新过程顺利完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值