로컬 Mac에서 여러 MySQL 데이터베이스 서버 생성

8328 단어 dbdbdatabasemysql

설명


  • 이 절에서는 여러 mysql 서버를 로컬로 만드는 방법에 대해 설명합니다.
  • 그러나 아직 읽고 싶지 않다면 dbdb 을 사용할 수 있습니다.



  • 다운로드


  • 먼저 mysql.com에서 MySQL 소스를 다운로드하자.
  • 사용하려는 항목을 한두 개 선택합니다.

  • MySQL 설치


  • mysql 소스를 버전별로 분리된 디렉토리에 추출합니다.

  • # 8.0.23
    mkdir -p ~/tmp/path-to-your-dir
    cd       ~/tmp/path-to-your-dir
    mkdir -p mysql/versions/8.0.23/basedir
    cd mysql/versions/8.0.23/basedir
    wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.23-macos10.15-x86_64.tar.gz
    tar zxf mysql-8.0.23-macos10.15-x86_64.tar.gz --strip-components 1
    
    # 5.7.31
    mkdir -p ~/tmp/path-to-your-dir
    cd       ~/tmp/path-to-your-dir
    mkdir -p mysql/versions/5.7.31/basedir
    cd mysql/versions/5.7.31/basedir
    wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.31-macos10.14-x86_64.tar.gz
    tar zxf mysql-5.7.31-macos10.14-x86_64.tar.gz --strip-components 1
    


    사용자 정의 datadir 및 포트로 MySQL 서버 초기화


  • MySQL 8.0 server options
  • MySQL 5.7 server options
  • 소켓과 포트를 분리하여 각 mysql을 별도의 프로세스로 시작할 수 있습니다.

  • # MySQL 8.0.23 with port 13306
    cd ~/tmp/path-to-your-dir
    mkdir -p mysql/versions/8.0.23/datadir/mysql8-name1
    cd mysql/versions/8.0.23
    dir=`pwd`
    $dir/basedir/bin/mysqld \
      --initialize-insecure \
      --user=_dbdb_mysql \
      --port=13306 \
      --socket=/tmp/dbdb_mysql_13306.sock \
      --basedir=$dir/basedir \
      --plugin-dir=$dir/basedir/lib/plugin  \
      --datadir=$dir/datadir/mysql8-name1 \
      --log-error=$dir/datadir/mysql8-name1/mysqld.err \
      --pid-file=$dir/datadir/mysql8-name1/mysql.pid
    
    # MySQL 8.0.23 with port 23306
    cd ~/tmp/path-to-your-dir
    mkdir -p mysql/versions/8.0.23/datadir/mysql8-name2
    cd mysql/versions/8.0.23
    dir=`pwd`
    $dir/basedir/bin/mysqld \
      --initialize-insecure \
      --user=_dbdb_mysql \
      --port=23306 \
      --socket=/tmp/dbdb_mysql_23306.sock \
      --basedir=$dir/basedir \
      --plugin-dir=$dir/basedir/lib/plugin  \
      --datadir=$dir/datadir/mysql8-name2 \
      --log-error=$dir/datadir/mysql8-name2/mysqld.err \
      --pid-file=$dir/datadir/mysql8-name2/mysql.pid
    
    # MySQL 5.7.31 with port 33306
    cd ~/tmp/path-to-your-dir
    mkdir -p mysql/versions/5.7.31/datadir/mysql5-name3
    cd mysql/versions/5.7.31
    dir=`pwd`
    $dir/basedir/bin/mysqld \
      --initialize-insecure \
      --user=_dbdb_mysql \
      --port=33306 \
      --socket=/tmp/dbdb_mysql_33306.sock \
      --basedir=$dir/basedir \
      --plugin-dir=$dir/basedir/lib/plugin  \
      --datadir=$dir/datadir/mysql5-name3 \
      --log-error=$dir/datadir/mysql5-name3/mysqld.err \
      --pid-file=$dir/datadir/mysql5-name3/mysql.pid
    
    # MySQL 5.7.31 with port 43306
    cd ~/tmp/path-to-your-dir
    mkdir -p mysql/versions/5.7.31/datadir/mysql5-name4
    cd mysql/versions/5.7.31
    dir=`pwd`
    $dir/basedir/bin/mysqld \
      --initialize-insecure \
      --user=_dbdb_mysql \
      --port=43306 \
      --socket=/tmp/dbdb_mysql_43306.sock \
      --basedir=$dir/basedir \
      --plugin-dir=$dir/basedir/lib/plugin  \
      --datadir=$dir/datadir/mysql5-name4 \
      --log-error=$dir/datadir/mysql5-name4/mysqld.err \
      --pid-file=$dir/datadir/mysql5-name4/mysql.pid
    


    무엇 향후 계획?


  • 로컬 Mac에서 여러 MySQL 데이터베이스 서버 시작
  • 또는 그냥 사용하십시오 dbdb .
  • 좋은 웹페이지 즐겨찾기