目录
一、卸载不需要的环境
二、安装mysql yum源
三、安装mysql
四、登录mysql
1. 直接登录
2. 设置免密码登录
五、配置my.cnf
六、mysql登录时的一些选项介绍
一、卸载不需要的环境
要注意,在安装mysql数据库时,最好将用户切换为root,避免一些不必要的问题。当数据库安装好后,普通用户也可以使用的。
在安装数据库之前,大家最好先检查一下自己的linux机器中有没有不需要的环境,有的话就将它们给卸载掉。
如果大家不知道自己的linux中有哪些不必要的环境,大家可以用ps axj | grep mariadb”命令看自己的机器上有没有这个东西。mariadb其实就是mysql数据库下的一个分支。
在我的机器上面并不存在,所以无需卸载。如果大家的linux上有这个环境,就最好卸载一下。
以mysql举例,如果你的linux上有mysql,要想卸载它,第一步就是关闭mysql服务,输入“systemctl stop mysqld”命令就行了。
第二步就是要去卸载了。在你的linux中,一般都会有mysql对应的一些安装包,输入“rpm -pa | grep mysql”就可以查看到你的机器上的mysql安装包了。然后输入“rpm -pa | grep mysql | xargs yum -y remove”命令,用yum将这些安装包卸载。
执行完上面的步骤,其实你的linux中的对应环境就已经被卸载了。
二、安装mysql yum源
要按照mysql yum源,最好获取官方的yum源,打开“http://repo.mysql.com/”网站,就可以在上面看到很多mysql yum源了:
在安装时,最好选择与自己的系统版本一直的yum源,否则可能出现软件兼容的问题。要查看自己的系统版本,输入“cat /etc/redhat-release”命令查看:
上图中的意思就是CentOs 7.6版本的linux。
大家从上面的yum源的图中可以发现,由于网页的问题,里面的很多东西都没有显示出来,所以大家可以在该页面单机右键,选择查看网页源代码查看更详细的信息。
在这里面你可以看到有些yum源后面带有mysql57或mysql80,这其实指的就是mysql5.7版本或mysql8.0版本:
在这里建议大家选择5.7的,因为这个版本是最常用的。
能看到如上界面后,就可以去找与自己的系统版本相对应的5.7了。因为我的系统是7.6版本,所以直接去找7.6版本即可。注意,你也可能找不到根据的版本号完全对应的yum源,此时就可以选择那个总的版本:
例如我的OS是7.6的,但是这里面没有7.6版本的yum源,所以就按照图中圈出来的7版本的yum源即可。
下载完毕后就可以着手准备按照mysql yum源了。打开你的linux,为了方便,大家可以创建一个文件夹用来存放安装包。然后在对应的目录下执行“rz”命令,将windows中的安装包上传到linux中:
上传完毕后,执行“rpm -ivh 安装包名”进行安装:
如果想确认自己是否安装成功,可以执行“ls /etc/yum.repos.d/ -l”查看当前机器可支持的yum源:
如果有图中的两个东西,就说明安装成功了。
为了确保万一,大家可以执行“yum list | grep mysql”查看一下安装的yum源能不能帮我们找到对应的mysql的内容:
如果可以查到,就会弹出很多东西,这里只截图了一部分,其实还有很多其他内容。此时就成功安装mysql yum源了,大家也可以将刚刚下载的安装包删除了。
三、安装mysql
准备好yum源后,就可以直接用yum安装了。输入“yum install -y mysql-community-server”进行安装。
在安装的过程中,大家可能会遇到两个问题。
第一个就是密钥过期的问题:
出现这个错误时,直接执行“rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022”命令,即可自动从网络中导入一条较新的密钥。执行完该命令后重新安装即可。
第二个问题就是安装的版本错误。这可能是因为大家在选择yum源时选择了错误的版本。卸载掉对应的yum源然后重新安装对应版本的yum源即可。
安装完成后,大家可以执行几个命令确认一下自己是否安装成功。
首先执行“ls /etc/my.cnf”命令,查看有没有对应文件:
然后执行“which mysqld”命令,查看是否存在mysqld服务端:
最后执行“which mysql”命令,查看是否存在mysql客户端:
如果大家自己观察服务端的路径,就会发现它的路径是sbin,这其实就是指这个服务端只能由超级管理员,即root用户启动。root用户启动后,普通用户也是可以使用的。
当这三个东西都存在时,执行“systemctl start mysqld”命令,运行客户端。然后执行“ps axj | grep mysqld”查看该客户端是否启动:
此时就可以看到一个mysql服务跑起来了。
四、登录mysql
由于大家现在还没有学习mysql中的一些相关语句,包括用户操作等内容,所以在这里的登录是让root登录,并没有在mysql上新建账户。在这里简单介绍三种mysql的临时登录方法。
1. 直接登录
在一些比较新的mysql版本中,当你安装后就默认支持免密码登录的。大家可以尝试直接输入“mysql -uroot -p”,在弹出输入密码的页面后直接按回车,看能不能登录。
2. 设置免密码登录
输入“vim /etc/my.cnf”命令进入mysqld的配置文件。打开后在这个配置文件中添加“skip-grant-tables”选项,保存并退出:
该选项添加后就可以在登录时让mysql免密码直接登录。
修改配置文件后,输入“systemctl restart mysqld”命令重启数据库,此时输入"mysql -uroot -p"命令就可以登录mysql了。
注意,当你输入登录命令后,依然会跳出输入密码的界面,此时只需要直接按下回车键就可以登录了。
此时大家就可以输入“show databases;”命令查看该数据库中的当前内容了。
要退出则直接输入“quit”命令即可。
五、配置my.cnf
这里讲解几个比较基础的mysql中的配置。首先用“vim /etc/my.cnf”命令打开配置文件。
第一个是可以修改mysql服务端使用的端口号。mysql的端口号在下载完后一般都是默认的3306,这个端口号是可以改的,在my.cnf配置文件中添加“port=端口号”即可。一般来讲,在大家未来到公司里面后,公司的数据库的端口号也是会修改的,不会使用默认端口号。
第二个就是设置服务端的编码格式。输入“character-set-server=utf8”,将服务端的编码格式设置为utf8。
第三个就是设置mysql后端用的存储引擎。输入“default-storage-engine=innodb”设置为innodb。
这里面的端口号为了避免修改默认端口号就设置的是3306,当然也可以设置为其他的。但是因为大家当前不太会使用mysql,为了避免未来出现使用上的一些问题,这里不建议修改端口号。
修改完配置文件后,同样的用"systemcl restart mysqld”命令重启mysqld服务即可。
还有一个东西大家可以设置,那就是开机自启动。在linux中输入“systemctl enable mysqld”和“systemctl daemon-reload”命令,即可让mysqld实现开机自启动。但没什么意义,毕竟大家基本上都是使用的云服务器,是一直启动着没有关闭过的。
六、mysql登录时的一些选项介绍
mysql中是存在很多选项的,这里就简单介绍几个在登录mysql时可用的选项。
“-h”。-h选项是指定你要登录的主机,因为mysql是一个网络服务,所以它必定在某台主机上运行,因此可以带上-h选项指定你要登录哪台主机。
“-P”,-P选项是指你要登录的特定主机上的特定mysql所绑定的端口号。
“-u”,表明你要用什么身份去登录。
“-p”,表示需要输入密码登录。
例如“mysql -h 127.0.0.1 -P 3306 -u root -p“,就表示要以root的身份登录ip地址为127.0.0.1的主机中的端口号为3306的mysql,且需要输入密码登录。
但如果你是在本地登录,就无需带-h和-P选项,因为这两个选项如果不带,则默认用127.0.0.1和配置文件中配置的端口号登录。因此可以简写为“mysql -u root -p”。
如果你设置了免密码登录,则在弹出输入密码的界面直接按回车即可。如果没有则正常输入密码登录。注意,在mysql中登录时密码是不会回显的,即你在输入密码时你输入密码的地方是空白,什么都看不到。