mysql 워크벤치에서 데이터베이스를 내보낼 수 없습니다.
MySQL Workbench에서 데이터베이스를 내보내려고 하는데 내보내기 진행 중에 다음과 같은 메시지가 나타납니다.
실행 중: mysqldump.exe --syslog-file="c:\users\user\appdata\local\syslog\tmp2h91wa.cnf" --user=root --host=localhost --syslog=3306 --default-character-set=utf8 --syslog "mydb" myqldump" myqldump: '선택'을 실행할 수 없습니다.NAME,
JSON_EXTRACT(HISTogram, '$"number-of-buckets-specified')
from information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'mydb' AND TABLE_NAME = 'column';: information_statistics'(1109)에 알 수 없는 테이블 'column_statistics'가 있습니다.종료 코드 2 20:55:09 내보내기 C:에서 작업이 실패했습니다.\Users\User\Documents\dumps\mydb.sql이 1개의 오류로 종료되었습니다.
이 문제도 발생.다음과 같이 결정:Workbench 메뉴에서 다음 페이지로 이동합니다.
편집 - 환경설정 - 관리
"Path to mysqldump Tool" 필드에서 mysqldump.exe에 대한 경로를 지정합니다(예: "C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump.exe"를 선택하고 확인을 클릭합니다.
그 후, 에러는 발생하지 않게 되었습니다.
@JustinLaureno와 @Mohd의 유익한 코멘트에서 제가 한 일을 요약합니다.MySQL Workbench 8.0.18에서 테스트된 Shaizad:
- 로 이동합니다.
C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules
- 파일 편집
wb_admin_export.py
(관리자 권한 필요) - 라인을 수정합니다.
skip_column_statistics = True if get_mysqldump_version() > Version(8, 0, 2) and self.owner.ctrl_be.target_version < Version(8, 0, 0) else False
- 대상:
skip_column_statistics = True
- 인라인 코멘트를 추가하지 말아 주세요.그렇지 않으면 동작하지 않습니다.
skip_column_statistics = True # This won't work
- MySQL Workbench 재시작
- 내보내기를 수행합니다.
MySql Workbench 버전 8.0.13에서는 다음 절차를 수행합니다.
- 관리/데이터 내보내기로 이동합니다.
- '내보낼 테이블' 목록에서 내보낼 스키마를 선택합니다.
- '상세 옵션...' 버튼(오른쪽 상단)을 클릭합니다.
- '기타/열 통계' 옵션을 검색합니다.
- 값을 0으로 설정합니다.
- 'Return' 버튼(오른쪽 위)을 클릭합니다.
이제 작동해야 합니다.안타깝게도 MySql Workbench를 시작할 때마다 이 작업을 수행해야 합니다.
이는 mysqldump 8에서 기본적으로 "enabled"로 되어 있는 플래그가 원인입니다.
이 기능을 비활성화하려면--column-statistics=0
.
구문:
mysqldump --column-statistics=0 --host=<server> --user <user> --password <securepass>
상세한 것에 대하여는, 이 링크를 참조해 주세요.
기본적으로 열 통계를 비활성화하려면 다음을 추가할 수 있습니다.
[mysqldump]
column-statistics=0
MySQL 구성 파일에 저장(예:/etc/my.cnf
또는~/.my.cnf
.
Workbench 8.0.16에서 아직 버그가 발생.
수정:
워크벤치 프로그램 디렉토리의 모듈 아래에서 wb_admin_export.py를 편집할 수 있습니다."syslog_column_statistics = True"(조건부 검색, 걱정하지 마십시오)를 검색하고 해당 행에 주석을 추가한 후 "syslog_column_statistics = True"(조건부 없음)를 추가합니다.
필요한 파라미터가 항상 추가됩니다.
저도 5분 전에 같은 문제가 있었어요.
는 내 을 넣어 .mysqldump
「」--column-statistics=0
해내면 효과가 있을 거야
내 경우엔 그건 쉬운 일이지만 넌 이해해야 해.
나도 같은 문제가 있었다.MySQL Workbench Data Export의 고급 옵션에서 열 통계를 사용하지 않도록 설정하면 이 문제를 해결할 수 있습니다.
1: 상세 옵션을 클릭합니다.
2: column-statistics의 다른 섹션에서 TRUE를 삭제하고 0으로 설정하여 비활성화합니다.
이제 데이터를 반환하고 내보냅니다.감사합니다.
저도 같은 문제가 있어서 이렇게 해결했어요.
워크벤치 환경설정을 편집합니다.편집 -> 프리퍼런스 -> 관리
"Path to mysqldump Tool" 속성에 mysqldump.exe 경로를 지정합니다.이 경로는 보통 "C:"에 있습니다.\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump.exe"
이 상태는 에서 발견되었습니다.wb_admin_export.py
코멘트가 '코멘트'가 아니라--column-statistics=0
else False
하거나 ""로 합니다.else True
.
skip_column_statistics = True if get_mysqldump_version() > Version(8,
0, 2) and self.owner.ctrl_be.target_version < Version(8, 0, 0) else
True
Mysql-workbench 버전 8.0.14에서는 열 통계를 비활성화하는 옵션이 없습니다.
다만, delete-master-logs 를 유효하게 하는 옵션도 있습니다.Mysql-workbench 버전 8.0.22
- --delete-master-logs는 "RESET MASTER" SQL 명령어와 동일한 효과를 가집니다.
- RESET MASTER는 인덱스 파일에 나열된 모든 바이너리 로그 파일을 삭제하고 바이너리 로그 인덱스 파일을 비어 있도록 재설정하고 새 바이너리 로그 파일을 만듭니다.이 문은 마스터를 처음 시작할 때만 사용할 수 있습니다.
★★★★★★★★★★★★★★★로 이동C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules
파일을 .wb_admin_export.py
"commendment (비고--column-statistics=0
를 다시 합니다."
MySQL workbench 최신 에디션에서도 동일한 문제가 발생했지만 mysqldump 명령줄을 사용하여 해결했습니다.
C:\Program Files\MySQL\MySQL Workbench 8.0 CE\mysqldump --column-statistics=0 --user=USERNAME --host=REMOTE_HOST --protocol=tcp --port=3306 --default-character-set=utf8 DATABASE_NAME > c:\temp\dump.sql --password
USERNAME, REMOTE_HOST, DATABASE_NAME을 사용자 이름으로 바꿉니다.
ASORKE에서는 버전 8.0.13으로 다운그레이드만 하면 됩니다.
다음 링크를 클릭하면 도움이 됩니다.
https://downloads.mysql.com/archives/workbench/
SSH 키를 사용하여 원격 데이터베이스에 액세스하는 경우 다음을 수행합니다.
순서 1
brew install putty
순서 2
puttygen id_rsa -O private-openssh -o id_rsa.pem
순서 3 - MySQL 워크벤치
SSH Key File: /Users/local/.ssh/id_rsa.pem
3시간의 시간을 낭비했기 때문에 누군가에게 도움이 되었으면 합니다.
버전 8에서 "wb_admin_export.py"를 수정하고 워크벤치를 재시작했습니다.이 기능을 사용할 수 있습니다.
def start(self):
.
.
.
title = "Dumping " + schema
title += " (%s)" % table
# description, object_count, pipe_factory, extra_args, objects
args = []
args.append('--column-statistics=0')
class ViewsRoutinesEventsDumpData(DumpThread.TaskData):
def __init__(self, schema, views, args, make_pipe):
title = "Dumping " + schema + " views and/or routines and/or events"
if not views:
extra_args = ["--no-create-info"]
else:
extra_args = []
DumpThread.TaskData.__init__(self,title, len(views), ["--skip-triggers", " --no-data" ," --no-create-db", "--column-statistics=0"] + extra_args + args, [schema] + views, None, make_pipe)```
기본 MySQL Workbench "마이그레이션 마법사"를 사용하여 오류 없이 데이터를 마이그레이션할 수 있습니다.메뉴 Database -> Migration Wizard에서 찾을 수 있습니다.데이터를 "온라인"으로 전송할 수 있지만 덤프 파일을 작성하는 옵션은 찾을 수 없습니다.이행에 매우 적합한 솔루션입니다.
XAMPP에서 창을 사용하는 경우 XAMP를 통과하는 경로를 지정해야 합니다.다음 절차를 따릅니다.
Workbench: Workbench로 합니다.edit -> preferences -> administration
to 에서 "Path to mysqldump tool" 합니다.C:\xampp\mysql\bin\mysqldump.exe
[확인] 을 클릭합니다.
언급URL : https://stackoverflow.com/questions/50803608/cant-export-my-database-from-mysql-workbench
'source' 카테고리의 다른 글
MariaDB에서 테이블을 작성하는 방법 (0) | 2022.09.13 |
---|---|
Python: 목록에서 처음 10개의 결과를 가져옵니다. (0) | 2022.09.13 |
가중치 있는 액션과 시간 감소를 기준으로 사용자의 순위를 매기기 위해 SQL 쿼리를 작성하는 방법은 무엇입니까? (0) | 2022.09.13 |
BitTorrent: 다운로드가 시작되지 않음 (0) | 2022.09.13 |
MaxScale을 통한 애플리케이션 접속 실패 (0) | 2022.09.13 |