>  기사  >  웹 프론트엔드  >  node.js에서 MongoDB 데이터를 MySQL에 동기화하는 방법

node.js에서 MongoDB 데이터를 MySQL에 동기화하는 방법

亚连
亚连원래의
2018-06-21 17:07:021080검색

이 기사에서는 MongoDB 데이터를 MySQL에 동기화하는 node.js에 대한 관련 정보를 주로 샘플 코드를 통해 자세히 소개합니다. 학습이나 업무에 필요한 모든 사람이 따라올 수 있습니다. 그리고 함께 배워요.

머리말

최근 비즈니스 요구로 인해 APP 백엔드는 MongoDB의 데이터를 Java 백엔드의 MySQL에 동기화한 다음 MySQL에서 계산된 데이터를 MongoDB 데이터베이스에 동기화해야 합니다.

이 과정이 굉장히 번거로워 보이지만 사실은 서로 목록을 작성하는 과정이에요.

다음으로 node.js를 사용하여 MongoDB의 데이터를 MySQL 데이터베이스에 일괄 삽입하는 구현 과정을 살펴보겠습니다. 할 말이 많지 않으니, 자세한 소개를 살펴보겠습니다.

환경

  • node.js

  • MongoDB

  • MySQL

  • npm

필수 모듈

  • mongoose

  • MySQL

MongoDB에서 데이터 준비

  • 예: 여기서 동기화하고 싶은 것은 사용자 이름, 이메일, 비밀번호가 포함된 사용자 테이블입니다...

  • MongoDB 쉘 명령을 통해 Insert 1000개의 데이터

여기서 몽구스 스키마를 작성하지 않겠습니다. MongoDB 및 MySQL 풀에 대한 node.js 연결은 다음과 같습니다.

node.js 연결 MongoDB:

//www.jb51.net/article/98813.htm

Nodejs mysql 풀 사용 예:

mysql 모듈은 felixge/node-mysql소스 코드는 다음과 같습니다.

/**
* Created by kevalin on 2015/4/22.
*/
var express = require('express');
var router = express.Router();
var mysql = require('mysql');
var conf = require('../config/dbconnection');
//定义pool池
var pool = mysql.createPool(
{
host : conf.dbMysql.host,
user : conf.dbMysql.user,
password : conf.dbMysql.password,
database : conf.dbMysql.database,
port : conf.dbMysql.port
}
);
router.get('/', function(req, res) {
var selectSites = "select *, date_format(do_time, '%Y-%m-%d %H:%i:%s') as time from siteinfo order by id";
pool.getConnection(function(err, connection) {
if (err) throw err;
connection.query(selectSites, function(err, rows) {
if (err) throw err;
res.render('sites', {title : '站点分布', results : rows});
//回收pool
connection.release();
});
});
});
module.exports = router;

키 코드는 아래와 같습니다.

아이디어:

먼저 MongoDB에서 데이터를 쿼리한 다음 순회를 통해 MySQL에 삽입합니다.

User.find({}, (err, user) => {
 if (err)
 res.send(err);
 for( let i = 0 ; i < family.length ; i ++ ) { 
 console.log("第" + (i + 1) + "条数据");
 let username = user[i].username; 
 let email = user[i].email;
 let password = user[i].password; 
 let sql = "insert into user_table(username, email, password) values (&#39;" + username + "&#39;,&#39;" + email + "&#39;,&#39;" + password + "&#39;);";
 pool.query(sql,(err, rows) => {
  if (err)
  res.send(err); 

  res.json({
  message:&#39;数据插入成功&#39;,
  rows
  });  
 });
 }
});
위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

Angular2에서 ts 파일의 중단점 디버깅을 구현하는 방법

vue-router에서 경로의 지연 로딩을 구현하는 방법

JS+캔버스를 사용하여 원뿔을 만드는 방법

JS 정렬 알고리즘 요약 정보

위 내용은 node.js에서 MongoDB 데이터를 MySQL에 동기화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.