第一步:确保服务器在最新的状态(可有可无)
[root@chenstudy ~]# yum -y update
第二步:检测系统是否自带安装MySQL
-
我之前安装过MySQL,现在已经卸载了
[root@chenstudy ~]# rpm -qa | grep mysql
-
如果你系统有安装,那可以选择进行卸载:
rpm -e mysql // 普通删除模式
rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
-
也可以使用以下方式删除
rpm -qa | grep mysql
yum remove mysql-community-libs-8.0.30-1.el7.x86_64
yum remove mysql-community-client-plugins-8.0.30-1.el7.x86_64
yum remove mysql-community-server-8.0.30-1.el7.x86_64
第三步:安装MySQL
接下来我们在 Centos7 系统下使用 yum 命令安装 MySQL:
-
我们把MySQL安装在/usr/local/mysql目录下
[root@chenstudy ~]# cd /usr/local
[root@chenstudy local]# mikdir mysql
[root@chenstudy local]# cd mysql/
[root@chenstudy mysql]# ls
[root@chenstudy mysql]# wget http://repo.mysql.com/mysql80-community-release-el7-5.noarch.rpm
[root@chenstudy mysql]# rpm -ivh mysql80-community-release-el7-7.noarch.rpm
[root@chenstudy mysql]# yum update
[root@chenstudy mysql]# yum install mysql-server
第四步:配置MySQL
4.1、权限设置:
[root@chenstudy mysql]# chown -R mysql:mysql /var/lib/mysql
4.2、初始化MySQL
[root@chenstudy mysql]# mysqld --initialize
4.3、启动MySQL
-
启动时报错:
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
-
执行以下语句:
[root@chenstudy mysql]# chown mysql:mysql -R /var/lib/mysql
4.4、查看MySQL运行状态
[root@chenstudy mysql]# systemctl status mysqld
4.5、设置MySQL开机自启动
[root@chenstudy mysql]# systemctl enable mysqld
注意:\如果我们是第一次启动 mysql 服务,mysql 服务器首先会进行初始化的配置。
此外,你也可以使用 MariaDB 代替,MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护,采用 GPL 授权许可。开发这个分支的原因之一是:甲骨文公司收购了 MySQL 后,有将 MySQL 闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
yum install mariadb-server mariadb
mariadb数据库的相关命令是:
systemctl start mariadb #启动MariaDB
systemctl stop mariadb #停止MariaDB
systemctl restart mariadb #重启MariaDB
systemctl enable mariadb #设置开机启动
第五步:验证MySQL安装
在成功安装 MySQL 后,一些基础表会表初始化,在服务器启动后,你可以通过简单的测试来验证 MySQL 是否工作正常。
使用 mysqladmin 工具来获取服务器状态:
使用 mysqladmin 命令来检查服务器的版本, 在 linux 上该二进制文件位于 /usr/bin 目录,在 Windows 上该二进制文件位于C:\mysql\bin 。
[root@chenstudy mysql]# clear
[root@chenstudy mysql]# mysqladmin --version
mysqladmin Ver 8.0.30 for Linux on x86_64 (MySQL Community Server - GPL)
第六步:登录MySQL
-
查看MySQL安装后的默认密码
[root@chenstudy mysql]# cd /var/log/
[root@chenstudy log]# ls
[root@chenstudy log]# cat mysqld.log
-
登录MySQL
[root@chenstudy log]# mysql -uroot -p
Enter password: 刚查到的密码
-
修改密码
mysql> alter user root@localhost identified by '密码';
Query OK, 0 rows affected (0.02 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
mysql> exit
Bye
[root@chenstudy log]# mysql -uroot -p
Enter password:‘新密码’
第七步: 开启远程登录,授权root远程登录
解释:不要以为阿里云服务器可以远程登录root用户,就以为我们也可以以mysql的root用户身份远程登录mysql数据库
mysql> USE mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
# 查看用户表权限
select host,user from user;
#运行下面两句话之后就可以通过root账户远程登陆。
update user set host='%' where user='root';
#命令立即执行生效(千万不要忘记刷新!!!!!)
#这句表示从mysql数据库的grant表中重新加载权限数据
flush privileges;
-
查看阿里云安全组是否开放了3306端口(没有的可以配置下)
-
最后在Navicat上面链接下