Hadoop2.7.7 ,mysql5.7
时间: 2023-07-05 16:36:26 浏览: 59
好的,下面是具体的操作步骤和代码:
1. 在MySQL中创建course1表格,并插入5条数据:
```mysql
CREATE TABLE course1 (
id INT NOT NULL AUTO_INCREMENT,
course_name VARCHAR(50) NOT NULL,
term VARCHAR(50) NOT NULL,
score INT NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO course1 (course_name, term, score) VALUES ('Math', 'Spring', 85);
INSERT INTO course1 (course_name, term, score) VALUES ('English', 'Spring', 90);
INSERT INTO course1 (course_name, term, score) VALUES ('History', 'Fall', 75);
INSERT INTO course1 (course_name, term, score) VALUES ('Science', 'Fall', 95);
INSERT INTO course1 (course_name, term, score) VALUES ('Art', 'Spring', 80);
```
2. 将course1的内容上传至HDFS:
```bash
sqoop export --connect jdbc:mysql://localhost:3306/test --username root --password yourpassword \
--table course1 --export-dir /path/to/local/course1 --input-fields-terminated-by '\t' \
--input-lines-terminated-by '\n' --input-null-string '\\N' --input-null-non-string '\\N'
```
其中,/path/to/local/course1为本地course1数据文件的路径。
3. 创建course2表格,并将HDFS中的数据加载到course2中:
```mysql
CREATE TABLE course2 (
id INT NOT NULL AUTO_INCREMENT,
course_name VARCHAR(50) NOT NULL,
term VARCHAR(50) NOT NULL,
score INT NOT NULL,
PRIMARY KEY (id)
);
LOAD DATA INPATH '/path/to/hdfs/course1' INTO TABLE course2;
```
其中,/path/to/hdfs/course1为HDFS上course1数据文件的路径。
注意事项:
- 在执行sqoop命令之前需要先下载并安装sqoop。
- 在执行sqoop命令时需要将yourpassword替换为您的MySQL密码。
- 在执行LOAD DATA命令之前需要先在HDFS上创建存放数据的目录。