yum安装mysql怎么启停服务器_Centos7(阿里云)安装Mysql5.7

相信很多小伙伴都体验过初学linux时安装mysql的痛苦,这里我总结了一下在centos7上安装mysql5.7的步骤(我是装在了阿里云服务器上),如果你觉得本文对你有所帮助,麻烦点赞收藏支持下啦

mysql5.7安装包(linux版):

链接:https://pan.baidu.com/s/1t2eILoJOP1zufHL83xTDFA

提取码:en1i

1、安装前的准备工作

1.1 执行安装命令前,检查并删除默认安装的mysql-libs/MariaDB

CentOS6

#查询是否默认安装了mysql-libs

rpm -qa|grep mysql

#如果存在mysql-libs的旧版本包如下:请先执行卸载命令

rpm -e --nodeps mysql-libs

CentOS7

#查询是否默认安装了mariadb

rpm -qa|grep mariadb

#如果存在如下,请先执行卸载命令:mariadb-libs-5.5.52-1.el7.x86_64(输入你们对应查出来的版本)

rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64

1.2 检查并安装以下两项依赖,

# 检查

rpm -qa|grep libaio

rpm -qa|grep net-tools

# 安装

yum install libaio -y

yum install net-tools -y

1.3 检查并赋予 tmp 目录权限

由于mysql安装过程中,会通过mysql用户在/tmp目录下新建tmp_db文件,所以给/tmp较大的权限

执行 :

chmod -R 777 /tmp

d0a2441ad3c2788ad2828bb4dfbb591c.png

2、正式安装

上传以下文件分别执行安装

在mysql的安装文件目录下执行:(必须按照顺序执行)

rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm

如果在安装mysql-community-server前没有事先安装好前三个依赖环境会报错

9564250fa2a25b7661462b5602cfc5df.png

3、查看MySQL版本号

执行mysqladmin --version命令,类似java -version打出消息,即为成功。

7c4911b2011b58ce21d1a57497b26807.png

4、mysql服务的初始化

如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化

mysqld --initialize --user=mysql

--initialize选项默认以“安全”模式来初始化,会为 root 用户生成一个临时密码,登陆后你需要设置一个新密码

查看生成的临时密码:

cat /var/log/mysqld.log

f485e0a7176dbd8fa49549d3eb063bea.png

把密码粘贴复制保存一下,下面登录修改密码会用到

5、MySQL服务启动/关闭/状态命令

# 启动:

systemctl start mysqld

# 状态:

systemctl status mysqld

# 关闭:

systemctl stop mysqld

启动mysql

6、root首次登录/修改密码

首次登录:

输入 mysql -uroot -p命令进行登录

首次登陆通过需要录入初始化密码:

在Enter password 输入刚才保存的临时密码

修改密码:

上面登录进mysql后,输入命令修改密码

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

设置完密码就可以用新密码登陆,正常使用数据库了

7、退出登录验证

在mysql窗口输入quit退出登录

8、mysql自启动

查看mysql是否自启动(默认自启动)

systemctl list-unit-files|grep mysqld.service

如不是enabled可以运行如下命令设置自启动

systemctl enable mysqld.sercice

9、修改数据库/表的字符集

为什么要修改字符集?

通过下面案例说明

创建测试数据库:

create database mydb01;

切换到该数据库:

use mydb

创建测试表:

create table mytbl(id int,name varchar(20));

测试插入中文数据:

insert into mytbl values(1,‘张三’);

c6846c177bdcbfa053962f3e01135050.png

会发现插入报错,原因是 mysql默认使用的字符集是Latin1,不支持中文字符,因此我们要把他修改成utf-8

修改步骤:

步骤一:

修改配置文件 vim /etc/my.cnf在最后加上中文字符集配置

character_set_server=utf8

步骤二:

重新启动mysql systemctl restart mysqld并查看状态systemctl status mysqld

已生成的库表字符集变更:

上面修改了字符集后,再次往mytbl表执行insert语句的时候依然报错,这是为什么呢?

我们使用命令查看上面在字符集更改前创建的库表的字符集详情

show create database mydb; #查看数据库字符集详情

show create table mytbl; #查看表字符集详情

2830c9603f1457938997d2b4b827baae.png

原来是修改全局的对已生成的库表字符集不会产生改变,下面我们对已生成的库表字符集进行变更

修改指定数据库的字符集

alter database mydb character set 'utf8';

修改指定数据表的字符集 alter table mytbl convert to character set 'utf8';

如果数据库已经存储乱码数据:更新数据或者删除数据

10、使用navicat连接mysql

出现问题:

c10912479a482cfec3f24cf8978b772d.png

问题原因:

连接用户名的访问权限不足

解决办法:授予权限

登录mysql,授予通过网络方式登录的root用户对所有库所有表的全部权限

grant all privileges on *.* to root@'%' identified by '密码';

最后需要刷新权限才能生效

flush privileges;

11、开放端口/关闭防火墙

开放端口:

如果是在腾讯云或阿里云服务器上安装的mysql,需要配置安全组,放行端口(以阿里云为例)

3ad34b0477f64a9ecc52821a4c816fa6.png

关闭防火墙:

输入命令永久关闭防火墙

systemctl disable firewalld.service

12、mysql安装相关文件位置

参数路径解释备注–basedir/usr/bin相关命令目录mysqladmin mysqldump等命令

–datadir/var/lib/mysql/mysql数据库文件的存放路径

–plugin-dir/usr/lib64/mysql/pluginmysql插件存放路径

–log-error/var/lib/mysql/jack.atguigu.errmysql错误日志路径

–pid-file/var/run/mysqld/mysqld.pid进程pid文件

–socket/var/lib/mysql/mysql.sock本地连接时用的unix套接字文件

/usr/share/mysql配置文件目录mysql脚本及配置文件

/etc/systemd/system/multi-user.target.wants/mysqld.service服务启停相关脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值