Server Side JavaScript

MySQL 소개 및 기본 사용법

MySQL 소개

MySQL 설치 - 맥 (OSX)

MySQL 설치 - 리눅스 (ubuntu)

MySQL 설치 - 윈도우

MySQL 구조

MySQL 사용하기

MySQL - UPDATE & DELETE

node-mysql 1 : 접속

node-mysql 2 : SELECT & INSERT

node-mysql 3 : UPDATE & DELETE

예제

MySQL JavaScript로 제어하기 수업의 예제 

데이터베이스 보기

show databases;

데이터베이스 생성

CREATE DATABASE o2 CHARACTER SET utf8 COLLATE utf8_general_ci;

데이터베이스 선택

use o2;

테이블 생성

CREATE TABLE `topic` (
`id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(100) NOT NULL,
  `description` text NOT NULL,
  `author` varchar(30) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

생성된 테이블 확인

show tables;

데이터 삽입

INSERT INTO topic (title, description, author) VALUES('JavaScript','Computer language for web.', 'egoing');
INSERT INTO topic (title, description, author) VALUES('NPM','Package manager', 'leezche');

 

댓글

댓글 본문
작성자
비밀번호
  1. 코딩천사
    mysql 설치-윈도우에서
    제대로 따라했는데 mysql.exe 파일이 없습니다...
  2. 바지락
    node-mysql 1 : 접속 하실때

    예제에 나와 있는 fields를 columns 로 바꾸셔야 에러가 나지 않습니다.

    var mysql = require('mysql');
    var conn = mysql.createConnection({
    host : 'localhost',
    user : 'root',
    password : '111111',
    database : 'o2'
    });
    conn.connect();

    var sql = 'SELECT * FROM topic';
    conn.query(sql, function(err, rows, columns){
    if(err){
    console.log(err);
    } else {
    console.log('rows', rows);
    console.log('columns', columns);
    }
    }
    });
  3. excelsior0828
    안녕하세요!
    opentutorials에서 php수업을 완주하고 nodejs 수업을 듣고 있습니다.
    이전에 다운로드한 mampstack을 사용해서 mysql을 실행하기 위해 manager-osx로 들어갔습니다.
    apache web server는 running을 하지만 mysql database는 아무리 start를 눌러도 running이 되질 않습니다.
    mac사용하고 있구요.

    도와주시면 감사하겠습니다!
  4. jwyoungs
    제가 한 가지 방법을 찾았습니다. 이게 안전한지 많이 쓰이는 방법인지는 잘 모르겠습니다.
    https://github.com......env
    이것을 활용하였습니다.
    대화보기
    • jwyoungs
      안녕하세요.
      mysql의 비번을 파일안에다가 적어두는 것이 위험하다고 말씀하셨는데, 다른방법을 취할 수 는 없나요? 감사합니다.
    • 호동
      아래 댓글들을 보고 npm install --save mysql을 설치하니 전과 같은 오류메시지는 안 뜨는데 아래와 같은 오류가 뜨네요. 어떻게 해야 오류가 안 뜨는 건가요? 방법 좀 알려주세요.

      { [Error: connect ECONNREFUSED 172.0.0.1:3306]
      code: 'ECONNREFUSED',
      errno: 'ECONNREFUSED',
      syscall: 'connect',
      address: '172.0.0.1',
      port: 3306,
      fatal: true }
    • 호동
      안녕하세요.
      Cloud9에서 MySQL을 실행하려고 하는데 계속 애러가 떠서요. MySQL과 node-mysql을 모두 설치했는데 뭐가 문제인 건지 모르겠어서요. 아래는 오류 내용입니다.

      Important: use process.env.PORT as the port and process.env.IP as the host in your scripts!

      Debugger listening on port 15454
      module.js:327
      throw err;
      ^

      Error: Cannot find module 'mysql'
      at Function.Module._resolveFilename (module.js:325:15)
      at Function.Module._load (module.js:276:25)
      at Module.require (module.js:353:17)
      at require (internal/module.js:12:17)
      at Object.<anonymous> (/home/ubuntu/workspace/database_mysql.js:1:75)
      at Module._compile (module.js:409:26)
      at Object.Module._extensions..js (module.js:416:10)
      at Module.load (module.js:343:32)
      at Function.Module._load (module.js:300:12)
      at Module.runMain [as _onTimeout] (module.js:441:10)

      Process exited with code: 1
    • Peater Han
      @jj 님

      답변 감사합니다. connection 연결과 끊는 것은 여러 시도 끝에 연관이 없다는 것을 알게 되었었습니다. 결국 비동기 방식으로 인해 발생되었기 때문에, 콜백함수 내부 마지막에 최종 처리하도록 하거나 해당 모듈의 동기방식을 고려해야 겠네요.
    • @Peater Han 님

      그건 Node.js 가 비순차적으로 작동되어서 그래요
      mysql 관련 함우와 관계없이 비동기식이라 그렇습니다 또한 connetion 을 연결하고 끊는 거랑도 관계가 없습니다.
      콜백 함수 이기 때문에 늦게 실행되는 것입니다~

      https://opentutorials.org......884
      영상 보시면 좋을 것 같습니다
    • soarhigh7
      저도 node-mysql 로 설치했다가,

      cannot find module 'mysql' 에러 나서 계속 검색했네요 ㅜㅜ


      npm install --save mysql 요렇게 하니까 되네용~!
    • Peater Han
      다른 방식으로 응용을 하려 했는데, 디버그하려고 conn.query 문 내의 함수가 외부에 있는 함수보다 늦게 실행이 되는 현상이 보이더라구요. 가령 예를 들면

      var numRows;
      var sql = 'SELECT * FROM person'; //person 테이블에 3개가 있다고 할 경우
      conn.query(sql, function(err, rows, field){
      if(err)
      console.log(err);
      else{
      numRows = rows.length;
      console.log('총개수', numRows);
      }
      });
      conn.end();
      console.log('numRows: ', numRows);

      이렇게 할 경우
      numRows: undefine
      총개수: 3
      이런식의 결과가 나오더라구요.
      즉, 함수 mysql관련 함수가 늦게 실행되더라구요.
    • uncommonine
      node-mysql 1 : 접속 영상에서 문제있으신분은 npm install node-mysql --save대신 npm install mysql --save으로 해주시면 됩니다. 참고: https://github.com......sql
    • sujin_suay
      npm으로 mysql을 별도로 설치해주셔야합니다. 이미 문제 해결하셨겠지만요^^
      대화보기
      • 안녕하세요 동영상 강의를 보면서 문제가 생겼는데 해결을 하지 못해서 글 남깁니다.
        현재 node-mysql1 접속 동영상을 공부하고 있고, npm node-mysql 설치와 알려주신 코드를 작성 후에 데이타베이스를 실행하기 위해 cmd에 node database_mysql.js 를 실행했는데

        module.js:327
        throw err;

        Error : Cannot find module 'mysql'
        at Function.Module._resolveFilename(module.js:325:15)
        at Function.Module.load(module.js:276:25)
        at Module.require(module.js:353:17)
        at require (internal/module.js:12:17)
        at Object.<anonymous> (C:\User\dev\js\server_side_javascript\database_mysql.js:1:80)

        at Module._compile(module.js:409:26)
        at Object.Module._extensions..js(module.js:416:10)
        at Module.load(module.js:343:32)
        at Function.Module._load(module.js:300:12)
        at Function.Module.runMain(module.js:441:10)

        이러한 에러가 발생했습니다. 분명히 똑같이 코드를 작성하고 모듈을 설치하였는데 안되니깐 답답하고 속상하네요 ㅠㅠ 혹시 이 문제가 왜 발생하는지 알 수 있을까요? 항상 감사합니다!!
      • 지류진
        감사합니다
      • 초보자
        채팅도 한번 넣는게 어떨까요?
      버전 관리
      egoing
      현재 버전
      선택 버전
      graphittie 자세히 보기