Skip to content

在服务器如何安装并使用MySQL

一、卸载残留环境

输入

bash
ps axj | grep mysql

查看是否存在正在运行的MySQL服务

如果有,则先输入

bash
systemctl stop mysqld

来关闭服务

然后输入

bash
 rpm -qa | grep mysql

查看是否已经存在相关安装包

像这样,如果存在,则需要全部卸载,输入 rpm -qa | grep mysql | xargs yum -y remove即可全部卸载。

此时再输入 rpm -qa | grep mysql,原先的安装包已经卸载了

要确认是否已经将MySQL服务卸载干净,可以输入ls /etc/my.cnf 查看是否存在该文件,如果卸载干净了是不会有这个文件的

二、获取官方yum源

首先通过下面这段命令查看CentOS版本

bash
cat /etc/redhat-release

然后在官方yum源网站中下载yum源,尽量寻找和自己环境版本匹配的源

官方yum源网站

进入网页后如果看不全细节,可以在页面源代码中查看

推荐选择前缀为mysql57的rpm安装包,按照自己的版本对应el后面的数字,有对应的小版本则优先选择,否则选择大版本匹配的。

点击下载到本地后,将对应rpm安装包上传到Linux中。

三、安装yum源

首先保证与rpm安装包位于同一目录下

输入 rpm -ivh + 安装包名 即可安装,类似这个效果

bash
rpm -ivh mysql57-community-release-el7-9.noarch.rpm

然后输入

bash
ls /etc/yum.repos.d/ -l

查看yum源列表中是否已经有了MySQL的yum源

然后输入

bash
yum list | grep mysql

查看是否存在相关MySQL的资源

至此,yum源安装成功,之前的rpm安装包可以卸载了

四、安装MySQL

输入

bash
yum install -y mysql-community-server

开始安装,如果安装成功最后会提示Complete,这里已经安装好了所以会提示Nothing to do

如果安装到最后提示如下:

bash
Failing package is: mysql-community-client-5.7.39-1.el7.x86_64

GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

则说明遇到了密钥过期的问题

输入

bash
 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

即可解决

要验证是否安装成功,输入 ls /etc/my.cnf 确保该文件存在,然后输入which mysqld和which mysql看下是否存在MySQL的服务端和客户端

五、启动MySQL

输入

bash
 systemctl start mysqld

启动MySQL服务

然后输入

bash
 ps axj | grep mysql

看看有没有跑起来

至此完成MySQL在CentOS环境下的安装

六 设置MYSQL密码

启动 MySQL 服务

bash
sudo systemctl start mysqld

查看临时密码(在安装过程中生成):

bash
sudo grep 'temporary password' /var/log/mysqld.log

我这个随机密码是 vpruq1oTGb== 这个一定要记好

使用临时密码登录 MySQL

bash
mysql -u root -p

在登录后设置新密码

bash
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

确保更改生效

bash
FLUSH PRIVILEGES;

测试新密码

退出并重新登录

bash
exit
mysql -u root -p

七 使用MYSQL

下面以user举例

创建表

sql
CREATE DATABASE user;

使用表

sql
USE user;

执行SQL文件(/opt/mysql/user.sql是路径加文件名)

sql
SOURCE /opt/mysql/user.sql;

查看数据库中都有什么表

sql
SHOW DATABASES;

如果看到 user 数据库,说明创建成功。接着可以执行:

sql
SELECT DATABASE();

要查看 user 数据库中的表

bash
SHOW TABLES;

列出所有在 user 数据库中的表

bash
DESCRIBE user;

删除某个表

sql
DROP TABLE user;

删除数据库

sql
DROP DATABASE user;

mysql自动启动

bash
sudo systemctl enable mysqld
sql
DELETE FROM user;
SELECT * FROM user;
INSERT INTO user (user_id,username, password) VALUES ('13','max', '6f70706c653132333435368b9b1e1913fdd106eb224ca11b72a322');

Released under the MIT License.