前言
Linux上安装软件相对windows要更要复杂一些,流程可能让很多人感到有些复杂。而MYSQL作为常用的数据库软件,又属于不得不学的那类,因为今天就来分享一下我安装MYSQL的简易流程,保证小白也能跟着操作。
这次使用的是RPM的方式安装,感觉细节还挺多的(真是麻烦死了)。
环境简介
案例中我的主机为win11.
尝试安装的是MYSQL8.0.28的版本。
使用的是阿里云的服务器,系统为CenOS 8.x,如果和你的系统有区别,请自行对照。
此外连接服务器用的是Xshell和XFTP。
步骤
1.官网下载MYSQL
打开MYSQL的官网,按步骤选中社区下载
注意下载的时候,我们要通过RPM的方式来安装(虽然也有其他方案可以安装,但是主流还是用RPM),因此在选择上要特别注意文件名。
选择适合自己的版本下载即可,别用32位的就行。第一步下载到此就完成啦。
补充下载方式
其实我们也可以直接在Linux上直接使用wget命令来进行下载(这样下载速度通常会更快一些)。
好处是不用再从本地上传到服务器端一次,例如我们可以通过浏览器的检查工具,找到mysql的下载链接。
如图,我们可以复制这个链接,在服务器端的控制台直接输入
wget -O mysql.tar https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.28-1.el8.x86_64.rpm-bundle.tar
这里的-O参数是用于指定下载后的文件名的,例如我将其指定为mysql.tar.
2.上传服务器端(如果直接在服务器端下载可跳过)
首先进入/usr/local
目录下(别问为什么是这个目录,这就是专门放用户编译软件的),新建一个mysql文件夹.
cd /usr/local
mkdir mysql
在XFTP中把文件上传到服务器端指定目录下/usr/localmysql
.
3.解压文件
解压不作多说
# tar -xvf mysql-8.0.28-1.el8.x86_64.rpm-bundle.tar
4.按步骤安装解压出来的RPM
这地方是最头疼的,5.x还好,8.x版本直接10多个rpm包需要安装,还有复杂的依赖关系。
我这里整理一条亲测的安装路线,可以直接一条条复制然后安装(也可以自行写个shell脚本,逐条运行。
有个注意点,安装devel包的时候可能会提示缺少一个包,叫做openssl。
你需要另外去安装一下这个包,不过操作还是比较简单的。
yum install openssl-devel -y
# rpm -ivh mysql-community-common-8.0.28-1.el8.x86_64.rpm
# rpm -ivh mysql-community-client-plugins-8.0.28-1.el8.x86_64.rpm
# rpm -ivh mysql-community-libs-8.0.28-1.el8.x86_64.rpm
# rpm -ivh mysql-community-devel-8.0.28-1.el8.x86_64.rpm
# rpm -ivh mysql-community-client-8.0.28-1.el8.x86_64.rpm
# yum install net-tools
# rpm -ivh mysql-community-icu-data-files-8.0.28-1.el8.x86_64.rpm
# rpm -ivh mysql-community-server-8.0.28-1.el8.x86_64.rpm
执行完上述命令,MYSQL的安装就已经完成了(这10多个包并不是都必须安装,安装指定的就可以运行)。
常用命令
systemctl status mysqld
用于查看mysql的启动状态,如启动成功,控制台输出如下图:
systemct start mysqldl
用于启动MYSQL,第一次启动耗时稍长。
systemctl enable mysqld
用于设置MYSQL的开机自启动
netstat -tunlp | grep mysql
用管道过滤的方式观察MYSQL的服务
ps -ef | grep mysql
查看MYSQL的进程
登录MYSQL
在完成安装后,第一次启动时,MYSQL会在指定位置(/var/log/mysqld.log)生成一个log文件,里面包含了一些信息(其中就有我们需要的临时密码)
我们还是可以通过管道符来筛选临时密码。
# cat /var/log/mysqld.log | grep password
后面的这一段即为我们需要的登录临时密码:
使用下面的命令,粘贴密码后成功登录mysql。
mysql -uroot -p
进入之后我们需要修改这个临时密码,但是默认的密码策略比较复杂(需要字母数字和特殊字符)
我们可以先修改密码策略(如果要求你先修改密码,那就先随便改个符合要求的密码),例如设置密码长度最低为6.
set global validate_password.policy=0;
set global validate_password.length=6;
这样一来,就可以任意修改密码了。
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456789';
重新测试登录,成功!!!学废了顺手点个赞~