1 构建MySQL服务器

1.1 问题

本案例要求熟悉MySQL官方安装包的使用,快速构建一台数据库服务器:

安装MySQL-server、MySQl-client软件包

修改数据库用户root的密码

确认MySQL服务程序运行、root可控

1.2 方案

本课程将使用64位的RHEL 7操作系统,MySQL数据库的版本是5.7.17。

访问http://dev.mysql.com/downloads/mysql/,找到MySQL Community Server下载页面,平台选择“Red Hat Enterprise Linux 7/ Oracle Linux”,然后选择64位的bundle整合包下载

注意:下载MySQL软件时需要以Oracle网站账户登录,如果没有请根据页面提示先注册一个(免费)

1.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:准备工作

1)停止mariadb服务

[root@localhost ~]# systemctl stop mariadb

2)删除/etc/my.cnf配置文件

此配置文件由RHEL自带的mariadb-libs库提供:

[root@localhost ~]# rm -rf /etc/my.cnf

3)删除数据

[root@localhost ~]# rm -rf /var/lib/mysql/*

4)卸载软件包(没有会显示未安装软件包)

[root@localhost ~]# rpm -e --nodeps mariadb-server mariadb `

警告:/var/log/mariadb/mariadb.log 已另存为/var/log/mariadb/mariadb.log.rpmsave

步骤二:安装软件包

1)安装mysql时可能会缺少某些依赖包,需提前单独安装

[root@localhost ~]# yum -y install perl-Data-Dumper perl-JSON perl-Time-HiRes

2)物理机传输解压包给虚拟机192.168.4.1

[root@room9pc01 ~]# cd 桌面

[root@room9pc01 桌面]# scp mysql-5.7.17.tar 192.168.4.1:/root/ //给虚拟机传包

root@192.168.4.1's password:

mysql-5.7.17.tar 100% 543MB 95.6MB/s 00:05

3)虚拟机192.168.4.1解压mysql-5.7.17.tar 整合包

[root@localhost ~]# tar -xvf mysql-5.7.17.tar //解压mysql整合包

./mysql-community-client-5.7.17-1.el7.x86_64.rpm

./mysql-community-common-5.7.17-1.el7.x86_64.rpm

./mysql-community-devel-5.7.17-1.el7.x86_64.rpm

./mysql-community-embedded-5.7.17-1.el7.x86_64.rpm

./mysql-community-embedded-compat-5.7.17-1.el7.x86_64.rpm

./mysql-community-embedded-devel-5.7.17-1.el7.x86_64.rpm

./mysql-community-libs-5.7.17-1.el7.x86_64.rpm

./mysql-community-libs-compat-5.7.17-1.el7.x86_64.rpm

./mysql-community-minimal-debuginfo-5.7.17-1.el7.x86_64.rpm

./mysql-community-server-5.7.17-1.el7.x86_64.rpm

./mysql-community-test-5.7.17-1.el7.x86_64.rpm

4)安装

[root@localhost ~]# yum -y install perl-JSON

[root@localhost ~]# rm -rf mysql-community-server-minimal-5.7.17-1.el7.x86_64.rpm

[root@localhost ~]# rpm -Uvh mysql-community-*.rpm

[root@localhost ~]# rpm -qa |grep -i mysql

步骤三:启动MySQL数据库服务并设置开机自启

[root@localhost ~]# systemctl start mysqld //启动mysql服务

[root@localhost ~]# systemctl enable mysqld //设置开机自启

[root@localhost ~]# systemctl status mysqld //查看mysql服务状态

● mysqld.service - MySQL Server

Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)

Active: active (running) since 二 2018-08-28 10:03:24 CST; 8min ago

Docs: man:mysqld(8)

http://dev.mysql.com/doc/refman/en/using-systemd.html

Main PID: 4284 (mysqld)

CGroup: /system.slice/mysqld.service

└─4284 /usr/sbin/mysqld --daemonize --pid-file=/var/r...

8月 28 10:02:56 localhost.localdomain systemd[1]: Starting MySQ...

8月 28 10:03:24 localhost.localdomain systemd[1]: Started MySQL...

Hint: Some lines were ellipsized, use -l to show in full.

步骤四:连接MySQL服务器,修改密码

查看随机生成的root管理密码

[root@localhost ~]#grep 'temporary password' /var/log/mysqld.log

2017-04-01T18:10:42.948679Z 1 [Note] A temporary password is generated for root@localhost: mtoa>AvAv

2)使用客户端命令mysql连接到MySQL服务器

提示验证时,填入前一步获得的随机密码,验证成功后即可进入“mysql> ”环境:

[root@localhost ~]# mysql -u root -p'mtoa>Av

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 11

Server version: 5.7.17

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> //登录成功后,进入SQL操作环境

用该密码登录到服务端后,必须马上修改密码,不然会报如下错误:

mysql> show databases;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

3)执行SET PASSWORD命令修改密码

这个其实与validate_password_policy的值有关,默认为1,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。如果我们不希望密码设置的那么复杂,需要修改两个全局参数:validate_password_policy与validate_password_length。validate_password_length默认值为8,最小值为4,如果你显性指定validate_password_length的值小于4,尽管不会报错,但validate_password_length的值将设为4。

可参考下列指令:

mysql>set global validate_password_policy=0; //只验证长度

Query OK, 0 rows affected (0.00 sec)

mysql>set global validate_password_length=6; //修改密码长度,默认值是8个字符

Query OK, 0 rows affected (0.00 sec)

mysql> alter user user() identified by "123456"; //修改登陆密码

Query OK, 0 rows affected (0.00 sec)

上述操作的结果是——更改数据库用户root从本机访问时的密码,设为123456。

退出“mysql> ”环境,重新登录验证,必须采用新的密码才能登入:

mysql> exit //退出 mysql> 环境

Bye

[root@localhost ~]# mysql -u root -p //重新登录

Enter password: //输入新设置的密码

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 15

Server version: 5.7.17 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql基础搭建_MySql基础-构建MySql数据库:安装MySql-server、MySql-client相关推荐

  1. mysql as用法_MySQL基础学习总结

    数据分析无法离开SQL这一重要的工具,经过十天时间的学习,并完全以MySQL工具对上一节的数据分析岗位数据进行了分析,加强了操作训练,对这一工具使用有了基本的经验.本着以输出为手段检验学习效果,以温故 ...

  2. mysql列别_MySQL基础及CRUD

    大纲 1. 数据库的基本概念 2. MySQL数据库软件 1. 安装 2. 卸载 3. 配置 3. SQL 1) DDL(Data Definition Language)数据定义语言 2) DML( ...

  3. mysql rollup 排序_MySQL基础实用知识集合(二)

    上期小编给大家汇总介绍了mysql的6个基础的知识点,下面继续给大家分享一下另外7个知识点: 7.什么是死锁?怎么解决? 死锁:两个或多个事务相互占用了对方的锁,就会一直处于等待的状态. 常见的解决死 ...

  4. mysql 分组求和_MySql基础语法

    SQL语句分类 DDL:数据定义语言,用来定义数据库对象:库.表.列等 DML:数据操作语言,用来定义数据库记录(数据) DCL:数据控制语言,用来定义访问权限和安全级别: DQL:数据查询语言,用来 ...

  5. mysql的知识_mysql基础知识

    mysql基础知识 1. MySQL是一个小型关系型数据库管理系统 2. MySQL的数据类型: 整数型:TINYINT,SMALLINT,INT,BIGINT 小数型:FLOAT,DOUBLE,DE ...

  6. mysql视频下载_Mysql基础+进阶完整版视频教程下载

    Mysql基础+进阶完整版视频教程下载 课程介绍: Mysql是一个最常用的关系型数据库管理系统,此为python开发职业课程系列的其中一套课程.该套课程是现目前国内最齐全的mysql视频教程之一,从 ...

  7. mysql 4 基础教程_MySQL基础教程(四):MySQL 管理

    通过以下命令来检查 MySQL 服务器是否启动 ps-ef|grep mysql 例如在我的苹果电脑上运行如下 [root@localhost~]# ps -ef | grep mysqlmysql1 ...

  8. 简述mysql 存储引擎_Mysql基础-存储引擎简述

    说明:Mysql服务器提供了丰富的存储引擎供我们选择,并且给我们提供了足够的可配性,完全可以根据实际需要实现自定义. Mysql 的存储引擎介绍 在数据库中存的就是一张张有着千丝万缕关系的表,所以表设 ...

  9. mysql 系统默认_mysql之系统默认数据库

    相关内容: 系统默认数据库information_schema,performance_schema,mysql,test  的意义 首发时间:2018-02-23 17:10 安装mysql完成后, ...

最新文章

  1. Python多线程——LOCK锁
  2. hdu 5616 Jam's balance(简单dp)
  3. tornado的资料(暂时没看)
  4. C++中如何读取一个数的位数_C语言编写程序求水仙花数
  5. [算法导论]练习16.1-4 活动教室分配(区间着色问题)
  6. 三星电子宣布已开始大规模量产5nm芯片,并正在研发4nm工艺
  7. wordpress后台加载慢的解决方法
  8. Java语言中几个常用的包
  9. iOS求职之OC面试题
  10. 1001 Hello,World!
  11. 《纽约时报》畅销书作家发布新的COVID安全旅行提示电子书
  12. linux查看udp丢包数量,Linux下UDP丢包问题分析思路
  13. 解决ArcGIS 报错:ERROR 999999: Error executing function.No spatial reference exists.No spatial reference
  14. 小区外的蒸米粉和Linux RCU锁
  15. Django测试文件——tests.py
  16. GitHub 中国区前 100 名到底是什么样的人?
  17. 七战DTCC铸成ACE Director 去哪儿网周彦伟畅聊数据库的十八般武艺
  18. git checkout切换分支报错解决办法
  19. 在python终端中打印颜色的3中方式(python3经典编程案例)
  20. wfa 认证 android 必须,我看到有个WFA行动学习促动师的认证,有谁了解这个认证的,介绍一下怎么可以通过认证,通过率高吗?...

热门文章

  1. R语言使用ggplot2包使用geom_dotplot函数绘制分组点图(手动编码添加均值、标准偏差)实战(dot plot)
  2. python使用fpdf生成pdf文件章节(chapter),包含:页眉、页脚、章节主题、数据排版等;
  3. R语言layout函数处理可视化图像布局实战
  4. Linux环境高级编程函数,Linux环境高级编程--出错处理(CLStatus)
  5. java message bus_【Microsoft Azure学习之旅】消息服务Service Bus的学习笔记及Demo示例...
  6. Failed to load module canberra-gtk-module错误的解决方案
  7. Python Numpy多维数组.sum(axis=0/1/2...) 详解
  8. 无人机数车--Drone-based Object Counting by Spatially Regularized Regional Proposal Network
  9. ASP.NET Core Web Razor Pages系列教程:使用ASP.NET Core创建Razor Pages Web应用程序
  10. ajax是tcp连接吗,基于微型TCP/IP协议与AJAX的动态Web服务器设计