programing

설치 후 mysql에서 연합 엔진을 활성화하려면 어떻게 해야 합니까?

oldcodes 2023. 7. 28. 22:36
반응형

설치 후 mysql에서 연합 엔진을 활성화하려면 어떻게 해야 합니까?

mysql 5.1.44가 있습니다.

mysql > show engine;+------------+---------+엔진 | 지원 |+------------+---------+ndbcluster | NO |MRG_MYISAM | 예 |블랙홀 | 예 |CSV | 예 |메모리 | 예 |연합 | 아니요 |보관 | 예 |InnoDB | YES |My ISAM | DEFAULT |

mysql에서 연합 엔진을 활성화해야 합니다.어떻게 해야 하나요?

/etc/my.cnf그리고 그 안에[mysqld]다음합니다.

federated

▁spec▁ 지정하는 것과 같습니다.--federated.

게시물이 조금 오래된 것은 알지만, 많은 사람들이 연합 엔진에 문제를 겪고 있는 것 같습니다.

yum을 통해 mysql 이진 파일을 설치하면 HA(High Availability) 플러그인이 이미 있습니다.mysql CLI 내에서 플러그인을 로드하기만 하면 됩니다.

기본 프로세스는 다음과 같습니다.

mysqld가 아직 시작되지 않은 경우 시작합니다.이 시점에서 'Federated'가 /etc/my.cnf에 없는지 확인합니다.

EX: 이때 /etc/my.cnf는 표준 YUM 설치에서 이와 같이 나타납니다.

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

루트(또는 충분한 권한이 있는 다른 계정)를 사용하여 mysql CLI에 로그인합니다.

Type:   show engines;

이 시점에서는 다음과 같은 연합 엔진이 나타나지 않아야 합니다.

mysql> show engines;
+------------+---------+------------------------------------------------------------+---    -----------+------+------------+
| Engine     | Support | Comment                                                    |  Transactions | XA   | Savepoints |
+------------+---------+------------------------------------------------------------+--- -----------+------+------------+
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                      | NO               | NO   | NO         |
| CSV        | YES     | CSV storage engine                                         | NO            | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     | NO           | NO   | NO         |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  | NO            | NO   | NO         |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
5 rows in set (0.00 sec)

--> 붙여넣기 종료 <--

페더레이트 엔진을 활성화하려면 다음을 입력합니다.

install plugin federated soname 'ha_federated.so'

이제 '엔진을 보여주면' Federated Engine(연방 엔진)이 표시되지만 꺼집니다.

다음과 같이 표시됩니다.


mysql > show engine;+------------+---------+------------------------------------------------------------+--------------+------+------------+엔진 | 지원 | 의견 | 트랜잭션 | XA | 저장 포인트 |+------------+---------+------------------------------------------------------------+--------------+------+------------+연방 | 아니요 | 연방오류가 발생한 MySQL 스토리지 엔진 | NULL | NULL | NULL |CSV | YES | CSV 스토리지 엔진 | NO | NO | NO |MyISAM | DEFAULT | 뛰어난 성능의 MySQL 3.23 기준 기본 엔진 | NO | NO |InnoDB | YES | 트랜잭션, 행 수준 잠금 및 외부 키 지원 | YES | YES | YES |MEMORY | YES | 해시 기반, 메모리에 저장, 유용한 forte임시 테이블 | 아니요 | 아니요 | 아니요 |MRG_MYISAM | YES | 동일한 MyISAM 테이블 모음 | NO | NO | NO |+------------+---------+------------------------------------------------------------+--------------+------+------------+세트 내 6개 행(0.00초)

이제 다음과 같이 안전하게 /etc/my.cnf 파일에 'Federated' 행을 추가할 수 있습니다.


[mysqld]datadir=/var/lib/messagesocket=/var/lib/socket/socket.socketuser=디바이스다양한 보안 위험을 방지하기 위해 심볼릭 링크를 사용하지 않도록 설정하는 것이 좋습니다.symbolic-symbolic = 0연방의
[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid

mysqld 다시 시작(서비스 mysqld 다시 시작 등)

다시 시작한 후 mysql CLI로 돌아갑니다.

Type 'show engines;'

이제 Federated Engine을 사용할 수 있고 Support(지원)가 YES(예)로 표시됩니다.


mysql > show engine;+------------+---------+------------------------------------------------------------+--------------+------+------------+엔진 | 지원 | 의견 | 트랜잭션 | XA | 저장 포인트 |+------------+---------+------------------------------------------------------------+--------------+------+------------+연합 | 예 | 페derated MySQL 스토리지 엔진 | NO | NO | NO |CSV | YES | CSV 스토리지 엔진 | NO | NO | NO |MyISAM | DEFAULT | 뛰어난 성능의 MySQL 3.23 기준 기본 엔진 | NO | NO |InnoDB | YES | 트랜잭션, 행 수준 잠금 및 외부 키 지원 | YES | YES | YES |MEMORY | YES | 해시 기반, 메모리에 저장, 임시 사용에 유용합니다.ry 테이블 | NO | NO | NO |MRG_MYISAM | YES | 동일한 MyISAM 테이블 모음 | NO | NO | NO |+------------+---------+------------------------------------------------------------+--------------+------+------------+세트 내 6개 행(0.00초)

그리고 당신은 끝났습니다... 나가서 연합 테이블을 만드세요...

행운을 빕니다.

5부터는 실행 하려면 MySQL 5.0.64를 . Federated를 활성화하려면 다음을 사용하여 MySQL 서버 바이너리를 시작해야 합니다.--federated선택.MySQL 설명서

사용 방법--federated 구성 파일의 옵션 드롭--.

my.cnf

[mysqld]
federated

저는 워크벤치에서 Forward Engineer를 시도하고 있었는데 이 오류가 제게 나타났습니다. 그래서 제 해결책은 Workbench -> Load your Model -> Mysql Model -> 오류가 표시된 표를 클릭하고 Edit을 클릭한 다음 Engine을 InnoDB로 변경하는 것이었습니다.

MYSQL 8

언급URL : https://stackoverflow.com/questions/5210309/how-can-i-enable-the-federated-engine-in-mysql-after-installation

반응형