mysql安装

查看是否安装mysql

我们先看一下有没有安装mysql

yum list installed mysql |  grep mysql

本地只安装了php链接mysql的库,没有安装mysql

如果有安装,可以使用安装的或者卸载了重新安装

添加yum源

去mysql官网查找yum源

找到最新的https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm

下面我就来安装下yum源

sudo rpm -ivh https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm

我们再看一下yum源是否安装成功

yum repolist | grep mysql

可以看到已经有mysql的yum源了

查看mysql的版本

yum repolist all | grep mysql

可以看到很多被禁用了,现在比较稳定的最高稳定版本是8.0了;

我们就安装这个吧

yum安装

sudo yum install mysql-community-server 

下载安装完成,

查看下安装目录

whereis mysql

启动/关闭mysql

sudo systemctl start mysqld
systemctl status mysqld //查看mysql的状态

显示是启动了。

查看初始密码(如无内容直接跳过)

sudo grep 'temporary password' /var/log/mysqld.log

测试下是否真的启动成功

sudo mysql -u root -p

使用上一步得到的初始化密码登录,若没有初始化密码,则直接回车即可

修改root密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';

刷新MySQL的系统权限相关表

mysql> flush privileges;

退出登录,试下新密码登录,登录成功即完成了。

php链接数据库

php代码如下:

<?php

echo 6666666666;
$con = mysql_connect("localhost","root","密码");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
else{
echo "login success.";
}
// some code
//mysql_close($con);
phpinfo(); ?>

访问http://192.168.189.134/phpinfo.php

提示:Could not connect: Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory

caching_sha2_password时mysql8默认的认证方式,好像使安装的mysql没有包含这个插件,以前版本的mysql使用的是mysql_native_password,我们修改为这个模式看看

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';

刷新MySQL的系统权限相关表

mysql> flush privileges;

再访问http://192.168.189.134/phpinfo.php

链接mysql成功。

mysql基本操作

1)数据库相关SQL的语句 a)显示当前用户下的数据库 show databases; b)创建数据库(语法参考? create database) create database pms; create database if not exists pms; create database if not exists pms character set utf8;

说明:在mysql中一个用户下可以有很多数据库(DB)

c)使用或打开数据库 ​ use database; ​ 查看当前正在使用的数据库:select database(); ​ d)删除数据库(语法? drop database) ​ drop database pms; ​ drop database if exists pms;

2)MySQL中表的相关操作?(DDL) a)创建表(语法? create table) create table if not exists pet( id int primary key auto_increment, name varchar(100) not null ); 当需要查看某张表的创建语句时,可以使用 show create table pet 当需要显示表结构时可以使用: desc pet b)修改表(语法?alter table);不作为重点,自己了解 c)删除表(语法?drop table) drop table if exists pet;

3)MySQL表中数据的操作?(DML) 1)向表中写入数据(insert) insert into pet values (null,'A'); insert into pet(id,name) values (null,'B'); insert into pet(name)values('C'); insert into pet(name)values('D'),('E'); 2)查询表中数据(select) select * from pet; select id,name from pet; select id,name from pet where id=10;

分页查询:limit 语句的应用(语法参考?select) ​ select * from pet limit 2; --2为row_count(表示要取几条数据) ​ select * from pet limit 4,2; --4表示offset,2表示 row_count ​ select * from pet limit 2 offset 4;

mysql加固

禁止 Mysql 以管理员帐号权限运行

以普通帐户安全运行 mysqld,禁止以管理员帐号权限运行 MySQL 服务。在 /etc/my.cnf 配置文件中进行以下设置

user=mysql

口令安全

检查账户默认密码和弱密码。口令长度需要至少八位,并包括数字、小写字母、大写字母和特殊符号四类中的至少两种类型,且五次以内不得设置相同的口令。密码应至少每 90 天进行一次更换。

下面命令修改密码

mysql> update user set password=password('test!p3') where user='root';
mysql> flush privileges;

弱密码很容易被爆破,所以密码复杂的要够,生命周期要限制,定期更换。

关闭远程访问

这种仅限于应用和数据库在同一台主机的情况,如果不同主机,那就不能禁止远程访问了

关闭远程访问可以通过禁止远程 TCP/IP 连接,通过在 MySQL 服务器的启动参数中添加--skip-networking参数使 MySQL 服务不监听任何 TCP/IP 连接,增加安全性。

参考资料

https://help.aliyun.com/knowledge_detail/49568.html

mysql安装及加固的更多相关文章

  1. centos mysql 实战 第一节课 安全加固 mysql安装

    centos mysql  实战  第一节课   安全加固  mysql安装 percona名字的由来=consultation 顾问+performance 性能=per  con  a mysql ...

  2. linux Mysql 安装及配置

    1.准备 cmake-3.6.0.tar.gz bison-3.0.4.tar.gz mysql-5.7.13.tar.gz (http://dev.mysql.com/get/Downloads/M ...

  3. mysql安装一 --- 源码包安装

    1.登陆http://www.mysql.com/ 或者 www.oracle.com 2. 3. 4. 上面如果不能加载,禁用代理软件 5. 6. 7. 8. 9.上传 10.md5校验安装包的完整 ...

  4. Ubuntu14.04 Django Mysql安装部署全过程

    Ubuntu14.04 Django Mysql安装部署全过程   一.简要步骤.(阿里云Ubuntu14.04) Python安装 Django Mysql的安装与配置 记录一下我的部署过程,也方便 ...

  5. mysql 安装问题

    针对免安装版的mysql: 1.启动CMD,在mysql安装目录下  ~\bin\目录下,输入: mysqld -install   安装msyql服务: 2.启动MySQL服务,输入: net st ...

  6. 001.mysql安装(lnmp)

    mysql官方网站:http://dev.mysql.com/downloads/ Linux环境:刚安装的32位的“最小化安装“的CentOS 6.7 mysql版本:本次实验安装的是mysql5. ...

  7. MySQL安装步骤

    MySQL安装步骤 1. 下载MySQL Community Server 5.6.21,注意选择系统类型(32位/64位) 2. 解压MySQL压缩包 将以下载的MySQL压缩包解压到自定义目录下. ...

  8. mysql安装配置

    MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言. MySQL由于其体积小.速度快 ...

  9. LNMP平台搭建---MySQL安装篇

    在前两篇中,安装了一个基本的Web服务器,但是只能提供静态网页查看,要做成动态网站,就必须要数据库或其他编程语言支持了,这里先介绍MySQL数据库的安装. MySQL是一个开源的数据库,在互联网行业应 ...

随机推荐

  1. linux常用命令(13)tail命令

    tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新, ...

  2. Apache POI读取Excel

    1.pom.xml配置文件 <!-- 配置Apache POI --> <dependency> <groupId>org.apache.poi</group ...

  3. Linux0.11之进程0创建进程1(1)

    进程0是由linus写在操作系统文件中的,是预先写死了的.那么进程0以后的进程是如何创建的呢?本篇文章主要讲述进程0创建进程1的过程. 在创建之前,操作系统先是进行了一系列的初始化,分别为设备号.块号 ...

  4. linux新建文件夹

    mkdir -p .... -p  ----parents no error if existion, make parent directories as needed

  5. Datafactory 实际使用案例

    Datafactory 实际使用案例 一.       简介 QuestDataFactory 是一种快速的.易于产生测试数据工具,它能建模复杂数据关系,且有带有GUI界面.DataFactory是一 ...

  6. Unity中的动画系统和Timeline(3) 模型和动画导入

    动画导入 美工做好的模型,直接将文件夹拖进来就导入好了.导入模型后,检查模型的材质贴图等是否丢失,若丢失,根据名字补上.如果美工取名规范,一一对应的话,就很简单.如果不是,那就呵呵哒. 有的美工做的比 ...

  7. 【AMAD】Pysnooper -- 别再用print进行debug了

    简介 动机 作用 用法 热度分析 源码分析 个人评分 简介 pysnooper是低配版debugger,别再用print进行debug了. 动机 想象一个场景,你的Python代码运行后不产生你要的效 ...

  8. 【BZOJ4766】文艺计算姬

    让你求一个两边各有n和m个点的完全二分图有多少个生成树. 这是一道比较经典的利用prufer序列结论求解答案的计数题. 大致思路考虑一张二分图求解prufer序列,由于prufer序列求解时最后剩下的 ...

  9. c++ | size_t

    1.size_t的定义 size_t是一种数据相关的无符号类型,它被设计得足够大以便能够内存中任意对象的大小. 在cstddef头文件中定义了size_t类型,这个文件是C标准库stddef.h头文件 ...

  10. NXP-PN511-antenna-design-quide

    NXP-PN511-antenna-design-quide  文库有下载 C1 C2