Windows 에 MySQL 5.7.17 압축 판 을 설치 하 는 중 발생 하 는 구덩이

5189 단어 mysql5.7.17windows
먼저 최신 MySQL 5.7.17 Community 압축 판 for Windows 64-bit 를 다운로드 합 니 다.
공식 다운로드 주소:http://dev.mysql.com/downloads/mysql/

그리고 설치 디 렉 터 리(예:C:\Prog\MySQL\)로 압축 을 풀 어 줍 니 다.다음은 my-default.ini 를 my.ini 로 복사 하고 my.ini 를 다음 과 같이 수정 합 니 다.

[mysql]
default-character-set=utf8mb4

[mysqld]
basedir = C:\Prog\MySQL
datadir = C:\Prog\MySQL\data
port = 3306
max_connections=200
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
default-storage-engine=INNODB
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
그 다음 에'관리자 신분'으로 cmd-'관리자 신분'을 여 는 것 이 중요 합 니 다.설치 디 렉 터 리 에 들 어가 MySQL 서 비 스 를 설치 합 니 다.

C:\Prog\MySQL\bin>mysqld install
Service successfully installed.
그리고 MySQL 서 비 스 를 시작 합 니 다:

net start mysql
처음에는 이렇게 간단 하 다 고 생각 했 지만 나방 의 보 고 는 틀 렸 다.

윈도 시스템 의'서비스'를 통 해 시작 하면 다음 과 같은 팁 을 줍 니 다.

문제 가 생 겨 서 정말 마음 이 막 혔 습 니 다.오랫동안 조 사 했 는데 알 고 보 니:
If you installed MySQL using the Noinstall package, you may need to initialize the data directory:
  • Windows distributions prior to MySQL 5.7.7 include a data directory with a set of preinitialized accounts in the mysql database.
  • As of 5.7.7, Windows installation operations performed using the Noinstall package do not include a data directory. To initialize the data directory, use the instructions at Section 2.10.1.1, “Initializing the Data Directory Manually Using mysqld”.
  • 구체 적 으로 이 두 링크 를 참고 할 수 있 습 니 다.
    2.3.5.4 Initializing the Data Directory
    2.10.1.1 Initializing the Data Directory Manually Using mysqld
    이 유 를 찾 았 습 니 다.그럼 수 동 Initialize Data Directory 를 사용 해 보 겠 습 니 다.
    
    mysqld --defaults-file=C:\Prog\MySQL\my.ini --initialize-insecure

    그리고 순서대로:
    
    net start mysql
    mysql -u root -p
    익숙 한 mysql>나 올 거 예요.
    유사 한 구 덩이 를 만난 사람 에 게 도움 이 되 기 를 바 랍 니 다.그 이 유 는 5.7.7 및 이후 의 압축 패키지 버 전 으로 수 동 Initialize Data Directory 가 필요 하기 때 문 입 니 다.
    기술 에는 신선 한 방법 이 하나 도 없고,구 덩이 는 함께 메 워 야 한다.
    나의 환경:
  • Windows 10 64-bit
  • MySQL Community Server 5.7.17 for Windows (x86, 64-bit), ZIP Archive
  • (분할 선,이상 MySQL 5.7.17 은 설치 가 완료 되 었 습 니 다.)
    마지막 으로 싸 게 SQLAlchemy 테스트 MySQL 을 만 듭 니 다.
    
    """SQLAlchemy  MySQL  """
    
    from sqlalchemy import create_engine, Table, Column, Integer, MetaData
    from sqlalchemy.dialects.mysql import CHAR
    from sqlalchemy.sql import select
    
    ENGINE = create_engine('mysql+pymysql://root:@127.0.0.1:3306/test?charset=utf8mb4')
    
    CONN = ENGINE.connect()
    
    USERINFO = Table('userinfo',
      MetaData(),
      Column('id', Integer, primary_key=True, autoincrement=True),
      Column('name', CHAR(24, charset='utf8mb4')),
      mysql_charset='utf8mb4')
    
    USER = select([USERINFO])
    
    RESULT = CONN.execute(USER)
    
    for row in RESULT:
     print(row.name)
    
    RESULT.close()
    CONN.close()
    출력 결 과 를 발견 하 는 동시에 경고 가 있 습 니 다.
    Warning: (1366, "Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 480")
    이게 어떻게 된 거 죠?각종 문자 집합 설정 을 n 회 검사 했다 면 문제 가 없 을 텐 데.....................................................
     
    수 차례 의 사고,실험 에서 무엇 을 발 견 했 습 니까?뭘 발 견 했 지?show variables like'%charac%'만 발견 하면;잠깐 이면 경고 가 나 올 거 야!
    이것 좀 보 세 요.
     
    바로 그것 이 아 닙 니까?MySQL Bug 혹시?!OMG!
    좋아!다시 MySQL 5.6.35!
     
    경찰 이 없어 졌어!
    이 어 재 구축,표 작성,테스트 프로그램:
     
    이제 OK.결국 한 바퀴 돌 고 MySQL 5.6.35 로 돌 아 왔 다.
    조용히 Python 을 쓰 세 요.싸 우 는 사람 도 없고 앞부분 이 찢 어 지 는 것 도 아 닙 니 다.세월 이 조용 하고 Python 이 조용 합 니 다.
    마지막 으로 Visual Studio Code 를 칭찬해 주세요.

    총결산
    이상 이 이 글 의 전부 입 니 다.자신의 경험 이 똑 같이 이런 문제 에 부 딪 힌 친구 들 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 댓 글 을 달 아 주 셔 도 됩 니 다.

    좋은 웹페이지 즐겨찾기