欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

MySql 安装(Linux)

最编程 2024-04-23 07:26:57
...

一、清除原来的mysql环境

在前期建议使用root用户来进行操作,使用

su -

来切换成root用户,但是如果老是提示认证失败,那么有可能我们的root密码并没有被设置,

我们可以先设置root的密码

sudo passwd root

然后就可以切换了。

我们使用

ps ajx | prep mysql

来查看

我这里说明是没有的,如果有的话,我们要先关掉,才能卸载。

rpm是linux软件包管理工具,我们可以用

rpm -qa | grep mysql

来查看是否有mysql的安装包。如果有的话,可以先卸载掉。

另外,mariadb是mysql的另一个开源版本。

如果有,也可以删掉

sudo yum remove mariadb

二、配置MySQL yum源

如果我们要下载mysql尽量下载与我们linux版本相近的版本

cat /etc/redhat-release

 

我这里是7.7

我们先mysql的官方yum源:

https://repo.mysql.com/

 我们推荐下载mysql5.7版本的。

进入这个官方的网站后,我们可以查看当前网页源码,然后开始查找,mysql后面跟的57就是5.7版本的,el7就是CentOS7,就下这个了。点一下就开始下载了,这个.rpm其实就是在linux下的安装包,里面包含的是mysql的yum源。

然后将其拷贝到linux上

 我们可以先看看我们的本地yum源

ls /etc/yum.repos.d/ -al

接着安装

rpm -ivh mysql57-community-release-el7.rpm

这个时候再查看yum源,就发现多了两个

还可以用以下命令来测试

yum list |grep mysql

 三、正式安装MySQL

  到这里我们已经可以把安装包给删除了,虽然也可以不删。

现在我们可以用yum来一键安装MySQL了。

yum install -y mysql-community-server

 安装好,这里不仅仅只是安装MySQL,它还会安装各种组件包括客户端。

另外安装的时候有可能会报错,如果出现了密钥过期的问题,比如

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

我们可以执行

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

来导入一个比较新的密钥。然后再重新执行yum来安装。

接下来验证是否安装成功,我们执行

ls /etc/my.cnf

这就表示成功了。

或者还可以执行

 which mysqld

 

这样也没问题。 这是查看MySQL的服务端。

我们还可以来查看MySQL的客户端

which mysql

对比我们发现,服务器处在sbin目录中,表示超级用户才能启动的。

四、开始登录 

  第一次安装好,如果我们没有进行配置,可能会登录不上。

方法一:

在老的MySQL中,它可能会给我们生成临时的登录密码

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

 但是新版本,包括我们的5.7都没有了。

所以不重点介绍。

方法二:

如果是最新的MySQL,root默认没有密码,我们可以直接登录,但是我们的版本5.7不行,所以也不多说了

方法三:

这是最通用的方法。先执行

vim /etc/my.cnf

我们直接在[mysqld]的最后加上

skip-grant-tables

就可以了,记得保存。

修改了配置文件以后,我们要想让配置生效,得重启一下MySQL服务。

执行

systemctl start mysqld.service

启动mysqld。

再执行

ps axj | grep mysql

查看,发现已经启动好了。

使用

mysql -u root -p

登录,因为是免密码的,所以我们直接回车登录。

这里可以使用一些简单的命令

show databases;

 输入

quit

可以退出。

五、设置配置文件

 比如如果我们想让mysql使用utf8的编码方式编码,需要先设置。

依旧是先打开

vim /etc/my.cnf

我们可以设置端口号

port=3306

在[mysqld]后面加上,它默认是3306,如果我们配置了,就按配置的来。

再来配置mysqld的编码格式

character-set-server=utf8

同样加进去。

再设置一下默认的存储引擎

default-storage-engine=innodb

然后保存退出

同理,我们需要重启mysqld才能生效

systemctl restart mysqld

 这个指令可以不用先退出mysqld再启动,它可以直接重启。

我们可以用

netstat -nltp

来检查我们的mysqld,可以看看它的端口号。

六、设置开机自启(可选)

  其实这个设不设置都无所谓,因为一般云服务器也不关机的。

执行两条指令

systemctl enable mysqld

systemctl daemon-reload