安装 MySQL 服务的详细步骤如下:

1. 解压安装包

现在已经为大家下载好了 MySQL 5.7.25 的安装包,存放在 /root/software 目录下。首先进入此目录下,然后使用tar -xvf 命令进行解压即可使用。

2. 安装 MySQL 组件

使用 rpm -ivh 命令依次安装 mysql-community-common (服务器和客户端库的公共文件)、mysql-community-libs(MySQL 数据库客户端应用程序的共享库)、mysql-community-libs-compat(MySQL 之前版本的共享兼容库)、mysql-community-client(MySQL 客户端应用程序和工具)和 mysql-community-server(数据库服务器和相关工具)。

3. 登录 MySQL

(1)初始化 MySQL 的数据库

安装好 MySQL 后,我们需要初始化数据库初始化和启动数据库时最好不要使用 root 用户,而是使用 mysql 用户启动。命令如下:

/usr/sbin/mysqld --initialize-insecure --user=mysql

(2)启动 MySQL 服务

使用如下命令开启 MySQL 服务,让其在后台运行:

/usr/sbin/mysqld --user=mysql &

说明:一定要加“&”,脚本才能放到后台运行。

(3)登录 MySQL

使用 root 用户无密码登录 MySQL

mysql -uroot

(4)重置 MySQL 密码

在 5.7 版本后,我们可以使用 alter user...identified by 命令 root 用户的密码修改为 “123456”,具体命令如下所示:

mysql> alter user 'root'@'localhost' identified by '123456';

修改完成,使用 exit 或者 quit 命令退出 MySQL,重新登录验证密码是否修改成功,具体命令如下所示:

mysql -uroot -p123456

4. 增加远程登录权限

当我们的帐号不允许从远程登录,只能在 localhost 连接时,这个时候只要在 MySQL 服务器上,更改 mysql 数据库里的 user 表里的 host 项,从 localhost 改成 % 即可实现用户远程登录

(1)查看 user 表信息

使用如下命令查看 mysql 数据库下的 user 表信息

mysql> use mysql;        # 切换成 mysql 数据库

mysql> select user,host from user;        # 查询用户信息

可以看到在 user 表中已创建的 root用户。host 字段表示登录的主机,其值可以用 IP 地址,也可用主机名。

(2)实现远程连接(授权法)

 host 字段的值改为 % 就表示在任何客户端机器上能以 root 用户登录到 MySQL 服务器,建议在开发时设为 %。命令如下:

# 设置远程登录权限

mysql> update user set host='%' where host='localhost';

# 刷新配置信息

mysql> flush privileges;

查看任务解析

安装 MySQL 服务的详细步骤如下:

1. 解压安装包

现在已经为大家下载好了 MySQL 5.7.25 的安装包,存放在 /root/software 目录下。首先进入此目录下,然后进行解压即可使用,命令如下:

cd /root/software/                # 进入目录

tar -xvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar         # 解压安装包到当前目录下

将其解压到当前目录下,即 /root/software 中,效果图如下所示:

2. 安装 MySQL 组件

使用 rpm -ivh 命令依次安装以下组件:

(1)首先安装 mysql-community-common (服务器和客户端库的公共文件),使用命令:

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

若是出现“100%”,则表示安装成功:

(2)其次安装 mysql-community-libs(MySQL 数据库客户端应用程序的共享库),使用命令:

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

若是出现“100%”,则表示安装成功:

(3)之后安装 mysql-community-libs-compat(MySQL 之前版本的共享兼容库),使用命令:

rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm

若是出现“100%”,则表示安装成功:

(4)之后安装 mysql-community-client(MySQL 客户端应用程序和工具),使用命令:

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

若是出现“100%”,则表示安装成功:

(5)最后安装 mysql-community-server(数据库服务器和相关工具),使用命令:

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

若是出现“100%”,则表示安装成功:

3. 登录 MySQL

(1)初始化 MySQL 的数据库

安装好 MySQL 后,我们需要初始化数据库初始化和启动数据库时最好不要使用 root 用户,而是使用 mysql 用户启动。命令如下:

/usr/sbin/mysqld --initialize-insecure --user=mysql

对于 MySQL 5.7.6 以后的 5.7 系列版本,MySQL 也可以使用 mysqld --initialize 初始化数据库,该命令会在 /var/log/mysqld.log 文件中生成一个登录 MySQL 的随机密码,而 mysqld
--initialize-insecure
 命令不会生成随机密码,而是设置 MySQL 的密码为空。

(2)启动 MySQL 服务

使用如下命令开启 MySQL 服务,让其在后台运行:

/usr/sbin/mysqld --user=mysql &

说明:一定要加“&”,脚本才能放到后台运行。

执行后,系统会打印出命令执行的PID,如下图所示:

(3)登录 MySQL

使用 root 用户无密码登录 MySQL

mysql -uroot

若是出现下图效果,说明登录成功:

(4)重置 MySQL 密码

在 5.7 版本后,我们可以使用 alter
user...identified by
 命令 root 用户的密码修改为 “123456”,具体命令如下所示:

mysql> alter user 'root'@'localhost' identified by '123456';

效果如下图所示:

修改完成,使用 exit 或者 quit 命令退出 MySQL,重新登录验证密码是否修改成功,具体命令如下所示:

mysql -uroot -p123456

效果如下图所示:

4. 增加远程登录权限

当我们的帐号不允许从远程登录,只能在 localhost 连接时,这个时候只要在 MySQL 服务器上,更改 mysql 数据库里的 user 表里的 host 项,从 localhost 改成 % 即可实现用户远程登录

(1)查看 user 表信息

使用如下命令查看 mysql 数据库下的 user 表信息

mysql> use mysql;        # 切换成 mysql 数据库

mysql> select user,host from user;        # 查询用户信息

效果如下图所示:

可以看到在 user 表中已创建的 root 用户。host 字段表示登录的主机,其值可以用 IP 地址,也可用主机名。

(2)实现远程连接(授权法)

 host 字段的值改为 % 就表示在任何客户端机器上能以 root 用户登录到 MySQL 服务器,建议在开发时设为 %。命令如下:

# 设置远程登录权限

mysql> update user set host='%' where host='localhost';

# 刷新配置信息

mysql> flush privileges;

效果图如下所示:

Hive 元数据配置到 MySQL 的详细步骤如下:

1. 驱动拷贝

将 /root/software 目录下的 MySQL 驱动包 mysql-connector-java-5.1.47-bin.jar 拷贝到 ${HIVE_HOME}/lib目录下。

cd /root/software/     # 进入目录
cp mysql-connector-java-5.1.47-bin.jar apache-hive-2.3.4-bin/lib/ # 拷贝MySQL驱动包

进入 ${HIVE_HOME}/lib 目录下进行验证:

2. 配置 Metastore MySQL

(1)在 ${HIVE_HOME}/conf 目录下创建一个名为 hive-site.xml 的文件,并使用 vim 编辑器进行编辑:

touch hive-site.xml  # 创建文件
vim hive-site.xml    # 使用vim编辑器进行编辑

(2)根据官方文档配置参数(https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration),拷贝数据到 hive-site.xml 文件中:

<configuration>  
<!--连接元数据库的链接信息 -->    
<property>  
<name>javax.jdo.option.ConnectionURL</name>  
<value>jdbc:mysql://???:???/hivedb?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>  
<description>JDBC connect string for a JDBC metastore</description>  
</property>  
<property>  
<!--连接数据库驱动 -->   
<name>javax.jdo.option.ConnectionDriverName</name>  
<value>com.mysql.jdbc.Driver</value>  
<description>Driver class name for a JDBC metastore</description>  
</property>  
<!--连接数据库用户名称 -->    
<property>  
<name>javax.jdo.option.ConnectionUserName</name>  
<value>???</value>  
<description>username to use against metastore database</description>  
</property>  
<!--连接数据库用户密码 -->   
<property>  
<name>javax.jdo.option.ConnectionPassword</name>  
<value>???</value>  
<description>password to use against metastore database</description>  
</property>  
</configuration>

3. 初始化元数据库

注意:如果使用的是 2.x 版本的 Hive,那么就必须手动初始化元数据库。 使用 schematool -dbType -initSchema 命令进行初始化:

schematool -dbType mysql -initSchema

若是出现“schemaTool completed”则初始化成功,如下图所示:

4. Hive 连接

在任意目录下使用 Hive 的三种连接方式之一:CLI 启动 Hive。由于已经在环境变量中配置了 HIVE_HOME ,所以这里直接在命令行执行如下命令即可:

hive  
或者  
hive --service cli

效果如下图所示:

可以使用如下命令退出 Hive 客户端:

hive> exit;
或者
hive> quit;

1. 创建数据库

进入hive客户端之后,创建数据库qingjiao。

查看任务解析

创建数据库:

create database qingjiao;

可以使用如下命令退出 Hive 客户端:

hive> exit;

或者

hive> quit;

hive完整搭建的更多相关文章

  1. Hadoop生态圈-Hive快速入门篇之Hive环境搭建

    Hadoop生态圈-Hive快速入门篇之Hive环境搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据仓库(理论性知识大多摘自百度百科) 1>.什么是数据仓库 数据 ...

  2. 《OD大数据实战》Hive环境搭建

    一.搭建hadoop环境 <OD大数据实战>hadoop伪分布式环境搭建 二.Hive环境搭建 1. 准备安装文件 下载地址: http://archive.cloudera.com/cd ...

  3. 《Programming Hive》读书笔记(一)Hadoop和hive环境搭建

    <Programming Hive>读书笔记(一)Hadoop和Hive环境搭建             先把主要的技术和工具学好,才干更高效地思考和工作.   Chapter 1.Int ...

  4. Hive环境搭建

    hive 环境搭建需要hadoop的环境.hadoop环境的搭建不在这里赘述.参考:http://www.cnblogs.com/parkin/p/6952370.html 1.准备阶段 hive 官 ...

  5. Hive篇--搭建Hive集群

    一.前述 Hive中搭建分为三中方式 a)内嵌Derby方式 b)Local方式 c)Remote方式 三种方式归根到底就是元数据的存储位置不一样. 二.具体实现 a)内嵌Derby方式 使用derb ...

  6. Spark环境搭建(四)-----------数据仓库Hive环境搭建

    Hive产生背景 1)MapReduce的编程不便,需通过Java语言等编写程序 2) HDFS上的文缺失Schema(在数据库中的表名列名等),方便开发者通过SQL的方式处理结构化的数据,而不需要J ...

  7. 无框架完整搭建安卓app及其服务端(一)

    技术背景: 我的一个项目做的的是图片处理,用 python 实现图片处理的核心功能后,想部署到安卓app中,但是对于一个对安卓和服务器都一知半解的小白来说要现学的东西太多了. 而实际上,我们的项目要求 ...

  8. 转载——Asp.Net MVC+EF+三层架构的完整搭建过程

    转载http://www.cnblogs.com/zzqvq/p/5816091.html Asp.Net MVC+EF+三层架构的完整搭建过程 架构图: 使用的数据库: 一张公司的员工信息表,测试数 ...

  9. Hive环境搭建和SparkSql整合

    一.搭建准备环境 在搭建Hive和SparkSql进行整合之前,首先需要搭建完成HDFS和Spark相关环境 这里使用Hive和Spark进行整合的目的主要是: 1.使用Hive对SparkSql中产 ...

随机推荐

  1. 面试 | Java 算法的 ACM 模式

    (Java 算法的 ACM 模式) 前言 经常在 LeetCode 上用核心代码模式刷题的小伙伴突然用 ACM 模式可能会适应不过来,把时间花在输入输出上很浪费时间,因此本篇笔记对 Java 算法的 ...

  2. DOM的事件传播机制

    在dom传播的过程中,一个事件有触发到响应,经历了三个过程: 1,目标的挖洞过程,先有html标签触发事件,然后向子标签一层一层传播,但未执行,,直到找到事件目标为止,这个过程叫做挖洞过程, 2,目标 ...

  3. Istio实践(2)-流量控制及服务间调用

    前言:接上一篇istio应用部署,本文介绍通过virtualservice实现流量控制,并通过部署client端进行服务调用实例 1. 修改virtualservice组件,实现权重占比访问不同版本服 ...

  4. 【GPLT】 图着色问题(c++)

    题目如下: 这道题就是奇葩,多少有点低质量,这题不难,知识点就是邻接矩阵,但有以下奇葩点 1.颜色的编号是1-v 不是1-k,这点卡了我一会: 2.颜色涂色可以多于3,也可以少于3(这其实正常,但如果 ...

  5. Android C/C++层hook和java层hook原理以及比较

    作者:Denny Qiao(乔喜铭),云智慧/架构师. 云智慧集团成立于2009年,是全栈智能业务运维解决方案服务商.经过多年自主研发,公司形成了从IT运维.电力运维到IoT运维的产业布局,覆盖ITO ...

  6. Markdown学习-Typora

    author:涂勇军 标题 (#加一个空格)一级标题 (##加一个空格)二级标题 (###加一个空格)三级标题 (####加一个空格)四级标题 字体 加粗:** hello,World **(快捷键是 ...

  7. XCTF练习题---CRYPTO---不仅仅是Morse

    XCTF练习题---CRYPTO---不仅仅是Morse flag:cyberpeace{attackanddefenceworldisinteresting} 解题步骤: 1.观察题目,下载附件 2 ...

  8. Annotation(注释) _Override _ Deprecated _ SuppressWarnings

    Deprecated SuppressWarnings 元注解

  9. 集成算法(Bagging & Boosting)

    用多种分类器一起完成同一份任务 Bagging策略(有放回的,随机的,子集大小一样的,m个训练集用同一个模型) Boosting-提升策略(串联) AdaBoost算法

  10. [AcWIng 799] 最长连续不重复子序列

    点击查看代码 #include<iostream> using namespace std; const int N = 1e5 + 10; int a[N], s[N]; int mai ...