1、mysql的基本介绍
MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),由瑞典公司MySQL AB开发并维护,目前由Oracle公司负责开发和支持。MySQL是一种功能强大、性能优越的关系型数据库管理系统,适用于各种规模的应用程序和系统。
以下是MySQL的一些基本特点和功能:
- 关系型数据库:MySQL是一种关系型数据库,使用表格来存储数据,支持SQL语言进行数据操作。
- 可扩展性:MySQL支持水平扩展和垂直扩展,可以通过添加更多的服务器、增加硬件资源或者集群来提高性能和容量。
- 多线程和高性能:MySQL采用多线程架构,能够处理大量并发请求,并具有良好的性能表现。
- 支持多种操作系统:MySQL可运行于各种操作系统平台,包括Windows、Linux、macOS等。
- 安全性:MySQL提供了一系列安全功能,如权限控制、加密连接、防止SQL注入等,保护数据库不受非法访问和攻击。
- 数据复制和备份:MySQL支持主从复制和数据备份,可以实现数据的冗余和灾备,提高数据可用性和安全性。
- 存储引擎:MySQL支持多个存储引擎,包括InnoDB、MyISAM、Memory等,每个存储引擎具有不同的特性和适用场景。
- 开源和社区支持:MySQL是开源软件,拥有庞大的用户和开发者社区,提供丰富的文档、教程和支持资源。
2、为什么选择mysql连接hive
选择 Hive 连接 MySQL 的主要原因是将 Hive 的强大数据分析能力与 MySQL 的关系型数据库集成,实现对大规模、关系型数据的全面处理和分析。通过连接,可以无缝集成和处理MySQL中的数据,并利用Hive提供的丰富功能进行复杂查询、聚合分析等操作。同时,Hive的扩展性和高可用性架构为处理大规模数据提供了保障,而兼容的SQL语言使得连接和查询MySQL数据更加直观和方便。总之,选择Hive连接MySQL可实现更全面、灵活和高效的数据处理和分析。
元数据是存储在mysql中,而不是derby中,支持多用户访问。
3、安装mysql8.26
mysql的安装有两种方式:使用yum源安装 ,第二种使用rpm安装包安装。
3.1、检查是否安装过同类的软件
rpm -qa | grep mariadb rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps rpm -qa | grep mysql
3.2、在opt下创建一个mysql的文件夹便于存放mysql的安装包
mkdir /opt/mysql
3.3、上传rpm安装包解压
tar -xvf /software/mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar -C /opt/mysql
3.4、安装
rpm -ivh mysql-community-common-8.0.26-1.el7.x86_64.rpm rpm -ivh mysql-community-client-plugins-8.0.26-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-8.0.26-1.el7.x86_64.rpm rpm -ivh mysql-community-client-8.0.26-1.el7.x86_64.rpm yum install -y net-tools yum install -y perl rpm -ivh mysql-community-server-8.0.26-1.el7.x86_64.rpm
3.5、修改密码
启动mysql systemctl start mysqld 查看mysql是否启动成功 systemctl status mysqld 查看mysql的原始密码 grep password /var/log/mysqld.log
通过原始密码进入mysql . mysql -uroot -p 输入原始密码 修改密码(必须设置一个复杂的密码,得还有特殊符号): alter user root@localhost identified by 'h1n2c3ctonG!'; 查看密码策略: show variables like '%validate_password%'; 修改密码设置策略,便于我们设置一个比较好记的密码: set global validate_password.policy=LOW; # 修改密码策略等级为LOW set global validate_password.length=4; # 密码的最小长度 set global validate_password.mixed_case_count=0; # 设置密码中至少要包含0个大写字母和小写字母 set global validate_password.number_count=0; # 设置密码中至少要包含0个数字 set global validate_password.special_char_count=0; # 设置密码中至少要包含0个特殊字符 设置简易密码: alter user root@localhost identified by '123456';
3.6、:修改mysql的远程连接
create user 'root'@'%' identified by '123456'; grant all privileges on *.* to 'root'@'%' with grant option; flush privileges;
4、hive本地模式配置:
因为derby模式,只能够支持一个客户端访问hive,不实用,在开发过程中,一般我们使用mysql作为元数据的数据库,这种模式称之为本地模式。
4.1、修改hive-site.xml
<property> <name>javax.jdo.option.ConnectionURL</name> 584 <value>jdbc:mysql://192.168.89.144:3306/hive?createDatabaseIfNotExist=true</value> <description> JDBC connect string for a JDBC metastore. To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL. For example, jdbc:postgresql://myhost/db?ssl=true for postgres database. </description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> 1102 <value>com.mysql.cj.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> 1127 <value>root</value> <description>Username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> 569 <value>123456</value> <description>password to use against metastore database</description> </property>
4.2、拷贝一个java的驱动包给mysql, 放入hive的lib下
cd /opt/hive/lib/ 通过finalshell 拖拽进去
4.3、、删除之前的Derby数据库
rm -rf metastore_db derby.log
4.4、初始化hive
schematool -initSchema -dbType mysql
4.5、 测试
进入hive
show databases; show talbes; create table stu(id int,name string); insert into stu values(1,"zhangsan"); select * from stu; 退出使用quit;
相关软件下载链接:链接:https://pan.baidu.com/s/15cKiwpjZ2oZQCPB6fgfL-Q?pwd=asdf
提取码:asdf
版权归原作者 bigdata从入门到放弃 所有, 如有侵权,请联系我们删除。