2016-08-06 2 views
1

Я пытаюсь подключиться к mysql и импортировать mysql через sqoop.Ошибка Sqoop mysql - ошибка связи связи

однако, ошибка связи с ошибкой связи.

Вот мой конфигурационный файл.

[mysqld] 
datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock 
user=mysql 
symbolic-links=0 

[mysqld_safe] 
log-error=/var/log/mysqld.log 
pid-file=/var/run/mysqld/mysqld.pid 

b) mysql работает нормально.

[[email protected] edureka]# sqoop import --connect jdbc:mysql://192.168.56.1/Edureka --table Employee --username root -P --target-dir /sqoopOut1 -m 1; 

Warning: /usr/lib/hcatalog does not exist! HCatalog jobs will fail. 
Please set $HCAT_HOME to the root of your HCatalog installation. 
Enter password: 
16/08/06 23:34:48 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset. 
16/08/06 23:34:48 INFO tool.CodeGenTool: Beginning code generation 
16/08/06 23:34:48 ERROR manager.SqlManager: Error executing statement: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. 
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 

Вот мой лог-файл:

60806 12:33:42 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 
160806 12:33:43 InnoDB: Initializing buffer pool, size = 8.0M 
160806 12:33:43 InnoDB: Completed initialization of buffer pool 
InnoDB: The first specified data file ./ibdata1 did not exist: 
InnoDB: a new database to be created! 
160806 12:33:43 InnoDB: Setting file ./ibdata1 size to 10 MB 
InnoDB: Database physically writes the file full: wait... 
160806 12:33:44 InnoDB: Log file ./ib_logfile0 did not exist: new to be created 
InnoDB: Setting log file ./ib_logfile0 size to 5 MB 
InnoDB: Database physically writes the file full: wait... 
160806 12:33:44 InnoDB: Log file ./ib_logfile1 did not exist: new to be created 
InnoDB: Setting log file ./ib_logfile1 size to 5 MB 
InnoDB: Database physically writes the file full: wait... 
InnoDB: Doublewrite buffer not found: creating new 
InnoDB: Doublewrite buffer created 
InnoDB: Creating foreign key constraint system tables 
InnoDB: Foreign key constraint system tables created 
160806 12:33:45 InnoDB: Started; log sequence number 0 0 
160806 12:33:45 [Note] Event Scheduler: Loaded 0 events 
160806 12:33:45 [Note] /usr/libexec/mysqld: ready for connections. 
Version: '5.1.73' socket: '/var/lib/mysql/mysql.sock' port: 3306 Source distribution 
160806 23:05:06 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 
160806 23:05:06 InnoDB: Initializing buffer pool, size = 8.0M 
160806 23:05:06 InnoDB: Completed initialization of buffer pool 
InnoDB: The log sequence number in ibdata files does not match 
InnoDB: the log sequence number in the ib_logfiles! 
160806 23:05:06 InnoDB: Database was not shut down normally! 
InnoDB: Starting crash recovery. 
InnoDB: Reading tablespace information from the .ibd files... 
InnoDB: Restoring possible half-written data pages from the doublewrite 
InnoDB: buffer... 
160806 23:05:07 InnoDB: Started; log sequence number 0 44233 
160806 23:05:07 [Note] Event Scheduler: Loaded 0 events 
160806 23:05:07 [Note] /usr/libexec/mysqld: ready for connections. 
Version: '5.1.73' socket: '/var/lib/mysql/mysql.sock' port: 3306 Source distribution 

Update: Я создал базу данных Edureka и создали таблицу сотрудников.

[[email protected] edureka]# mysql -u root -p 

Введите пароль: Добро пожаловать в монитор MySQL. Команды заканчиваются; или \ g. Ваш идентификатор соединения с MySQL равен 3 Версия сервера: 5.1.73 Распределение источников

Copyright (c) 2000, 2013, Oracle и/или его филиалы. Все права защищены.

Oracle является зарегистрированной торговой маркой корпорации Oracle и/или ее дочерних компаний . Другие названия могут быть товарными знаками соответствующих владельцев .

Тип 'help;' или '\ h' для получения справки. Введите '\ c', чтобы очистить текущую инструкцию ввода.

MySQL> использовать edureka информацию таблицы Чтение для завершения имен таблиц и столбцов Вы можете отключить эту функцию, чтобы получить более быстрый запуск с -A

базы данных изменилась

mysql> select * from employee; 
+--------+-------+ 
| ename | ecode | 
+--------+-------+ 
| neha | 101 | 
| yogesh | 102 | 
+--------+-------+ 
2 rows in set (0.00 sec) 

Это как смотреть «показать», как предусматривается предоставление на моем SQL:

mysql> show grants; 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| Grants for [email protected]                            | 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' WITH GRANT OPTION | 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
1 row in set (0.00 sec) 

ответ

2

вы должны использовать номер порта в JDBC соединительная строка:

sqoop import --connect jdbc:mysql://192.168.56.1:3306/Edureka --table Employee --username root -P --target-dir /sqoopOut1 -m 1; 

Кроме того, вы также должны использовать имя хоста вместо IP.
так, если вывод команды hostname -fcomputer.name является использование этого в строке JDBC соединения:

sqoop import --connect jdbc:mysql://computer.name:3306/Edureka --table Employee --username root -P --target-dir /sqoopOut1 -m 1; 
+0

об использовании Localhost: 3306 в выше импорта sqoop. Я получаю ошибку, что базы данных Edureka не существует. Тем не менее, я создал базу данных – Powershel

+0

Можете ли вы проверить на стороне MySQL, что база данных существует? –

+0

Да, я добавил в UPDATE выше. База данных Mysql существует. – Powershel

Смежные вопросы