Linux 安装Mysql详细教程

前言

本文主要介绍在Linux环境下安装MySQL的过程。

1: 下载MySQL5.7的rpm安装包

选择合适的版本,这里我们使用的是MySQL5.7.20;下载完成后发送到自己的CentOS7服务器里,这里 可以通过Xftp上传

MySQLicon-default.png?t=N7T8https://www.mysql.com/

1.在根目录下创建一个mysqlpackage目录mkdir mysqlpackage将需要的放入

2. :卸载已安装的MySQL(没安装过则跳过)注:卸载之前请关闭mysql服务,命令:

systemctl stop mysqld

按照顺序卸载:

rpm -e --nodeps mysql-community-server

rpm -e --nodeps mysql-community-client

rpm -e --nodeps mysql-community-libs

rpm -e --nodeps mysql-community-common

卸载完基本的环境后,我们要清理依赖的文件(数据库配置文件及数据库数据文件)

-- 删除数据库配置文件(一般情况下卸载了mysql这个文件也会被自动删除)

rm -rf /etc/my.cnf

-- 删除数据库数据文件(包含系统数据库表和自定义数据库表),但是如果陌生服务器,此步骤谨 慎!!!!!!

rm -rf /var/lib/mysql

-- 删除日志临时文件(比如安装后产生密码的文件,不删除会发现安装后查询2个初始密码,但以下面的为 主)

rm -rf /var/log/mysqld.log

3:MySQL安装环境准备

卸载mariadb:检查是否安装了mariadb(CentOS7默认安装),如存在则卸载mariadb;如果你 是CentOS6,则默认是MySQL,那么你就卸载MySQL即可。

rpm -qa | grep mariadb

rpm -e mariadb-libs-5.5.68-1.el7.x86_64 –nodeps

安装所需依赖:一般都是最新版了,以防万一后面安装出错,缺少依赖。

yum install libaio –y

yum install net-tools –y

4:安装我们上传的四个MySQL包并启动

安装时必须严格遵守安装顺序 依赖关系依次为 common → libs → client → server

ivh中, i-install安装;v-verbose进度条;h-hash哈希校验

安装后查询安装的MySQL版本 mysqladmin –version

# 查询MySQL在系统的状态

[root@VM-8-15-centos ~]# systemctl status mysqld

# 启动MySQL数据库

[root@VM-8-15-centos ~]# systemctl start mysqld

# 关闭MySQL数据库

[root@VM-8-15-centos ~]# systemctl stop mysqld

# 重启MySQL数据库

[root@VM-8-15-centos ~]# systemctl restart mysqld

# 查看MySQL进程

[root@VM-8-15-centos ~]# ps -ef | grep mysql

示例:先检查是否running,如果没有运行则开启

5:登录安装的MySQL5.7

1)查看(默认)密码:grep 'temporary password' /var/log/mysqld.log

2)登入mysql,输入密码时不显示,慎重

3)更改密码:初始化密码只是提供给你登录到内部,而我们进入到内部必须修改密码,否则无法对数 据库操作,就如下图我们无法操作(密码为8位并且包含特殊字符、大小写字母、数字

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

show variables like 'validate_password%';

validate_password_check_user_name OFF        是否验证用户名

validate_password_dictionary_file                    密码策略文件,策略为STRONG才需要 validate_password_length                  8          密码长度

validate_password_mixed_case_count 1          大小写字符长度,至少一个 validate_password_number_count      1          数字至少一个

validate_password_policy                 LOW      密码策略

validate_password_special_char_count 1          特殊字符至少一个

策略解释

0    LOW 校验级别最低,只校验密码长度,只要长度跟validate_password_length一样即可,默认长度是8位。

1     MEDIUM 这个时候首先要满足的是validate_password_policy=0时的验证要求。然后现去验证密码中的数字个 数,大小写个数,特殊字符个数。

2    STRONG 这个时候必须先满足0,1的要求,然后它还追加了一个,对于密码中任意连续4个(或4个让上)字符不得 是字典中的单词(validate_password_dictionary_file)

set global validate_password_policy=0; # 关闭密码复杂性策略(LOW)

set global validate_password_length=3; # 设置密码复杂性要求密码最低长度为3

select @@validate_password_policy; # 查看密码复杂性策略

select @@validate_password_length; # 查看密码复杂性要求密码最低长度大小

validate_password_length(最低可以设置为4位

设置完便可设置自己喜欢的密码了

6:创建用户并授权

MySQL中的用户账户由用户名和主机部分组成,要创建MySQL账户语法如下

语法:mysql> CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';

# '用户名'@'localhost' 其中localhost代表设置只能从localhost本机连接到MySQL服务器,无 法远程

语法:mysql> CREATE USER '用户名ser'@'119.28.68.52' IDENTIFIED BY '密码';

# '用户名'@'119.28.68.52' 只能从IP 119.28.68.52 的计算机授予(远程)访问权限

语法:mysql> CREATE USER '用户名'@'%' IDENTIFIED BY '密码';

# '用户名'@'%' 可以从任何主机连接到MySQL

用户账户权限设置:

ALL PRIVILEGES - 授予用户帐户的所有权限。

CREATE - 允许用户帐户创建数据库和表。

DROP - 允许用户帐户删除数据库和表。

DELETE - 允许用户帐户从特定表中删除行。

INSERT - 允许用户帐户将行插入特定表。

SELECT - 允许用户帐户读取数据库。

UPDATE - 允许用户帐户更新表行。

语法:mysql> GRANT ALL 权限1,权限2,... ON 分配权限的数据库名称 . * TO '用户名'@'%';

示例:

显示MySQL用户帐户权限:

要查找授予特定MySQL用户帐户的权限,请使用SHOW GRANTS语句:

SHOW GRANTS FOR '用户名'@'localhost';

退出

quit / exit

      

刷新配置

flush privileges;

打开MySQL端口号 3306/tcp

firewall-cmd--list-ports

firewall-cmd --zone=public --add-port=3306/tcp –permanent

firewall-cmd --reload

  • 16
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值