mysql 5.5 FreeBSD 11.3-RELEASE로 롤백

mysql 5.5 FreeBSD 11.3-RELEASE로 롤백

mysql 5.5로 롤백할 수 있는 방법이 있습니까? 현재 pkg를 통해 5.6.47이 설치되어 있습니다.

현재 버전을 제거하려고 시도했지만 성공하지 못했습니다. 기본적으로 freebsd 시스템을 재구성하지 않고 mysql 5.5의 모든 버전으로 이동하는 방법을 알고 계십니까?

root@ServerfilesPoject16:~ # pkg delete mysql55-client-5.6.47
No packages matched for pattern 'mysql55-client-5.6.47'

답변1

경고하다!여기 용이 있어요!

기계를 "재구성"하는 것이 무엇을 의미하는지 명확하지 않습니다. 기본 FreeBSD 설치를 변경할 필요가 없습니다. 그러나 이러한 패키지가 충돌하므로 컴퓨터를 변경해야 합니다.

당신이 보면프레쉬포트충돌을 볼 수 있습니다.

CONFLICTS_INSTALL:

    mysql5[0-46-9]-client-*
    mariadb*-client-*
    percona*-client-*

일반적인 작업에서는 필요한 패키지 설치를 요청하면 이러한 충돌에 대해 경고하고 패키지를 제거하겠다고 제안합니다.

pkg install mysql55-client

그런 다음 삭제 기능을 제공해야 합니다 mysql56-client.

이는 귀하가 버전 번호에 대해 혼동하고 있다고 믿게 만듭니다.

버전 5.5와 5.6은 서로 다른 패키지입니다.

당신은 mysql55-client-5.6.47. 내 생각에는 당신이 가지고 있을 가능성이 더 높다고 생각합니다 mysql56-client-5.6.47.

다음 명령을 사용하면 시스템에 실제로 설치된 내용을 확인할 수 있습니다.

pkg info

따라서 애플리케이션 관점에서 보면 서로 다른 버전을 설치하고 충돌을 처리하는 것은 매우 낭비적입니다. 시간이 지남에 따라 더 이상 필요하지 않은 종속성이 많은 애플리케이션을 설치한 경우 다음 명령을 사용하여 해당 애플리케이션을 제거할 수 있습니다.

pkg autoremove

다음 매뉴얼 페이지를 읽어보십시오.포장(8). 패키지 관리 방법에 대한 많은 튜토리얼이 있습니다.

Mysql 클라이언트를 사용하는 상황은 간단하고, 간단한 클라이언트이기 때문에 앞뒤로 쉽게 교체할 수 있습니다.

그러나 MySQL 서버도 가지고 있다면 상황이 까다로울 수 있습니다. 이론적으로 서버 응용 프로그램도 쉽게 교체할 수 있습니다. 하지만 이것은 데이터베이스 서버이고, 그런 것들은... 데이터를 가지고 있습니다.

따라서 애플리케이션을 쉽게 롤백할 수 있습니다. 그러나 데이터는 전적으로 애플리케이션에 따라 달라집니다. 데이터베이스의 버전 번호를 전환하면 일반적으로 디스크의 데이터 구조가 업데이트됩니다. 데이터가 업데이트된 경우 이전 버전이 올바르게 처리되지 않을 수 있습니다. 일반적인 롤백은 백업을 복원하는 것입니다. 그러나 이것은 응용 프로그램에 의해 결정됩니다.

이러한 유형의 백업을 수행하는 방법에는 여러 가지가 있습니다. 특히 데이터베이스의 경우.

그러나 FreeBSD에는 여러분을 도울 수 있는 중요한 도구가 하나 있습니다. 당신이 사용하는 경우ZFS파일 시스템이라면 할 수 있습니다스냅 사진. 업그레이드하기 전에 스냅샷을 생성한 경우 해당 스냅샷으로 되돌려 즉시 롤백을 수행할 수 있습니다. 그런 다음 업그레이드(및 롤백)를 여러 번 시도할 수 있습니다. 그러나 업그레이드하기 전에 스냅샷을 찍어야 합니다.

스냅샷 프로세스는 매우 빠릅니다. 그러나 안전을 위해서는 mysql이 FLUSH TABLES WITH READ LOCK. 그 다음에 UNLOCK TABLES. 바라보다이 답변그리고이 설명

mysql << EOF
    FLUSH TABLES WITH READ LOCK;
    system zfs snapshot data/db@snapname
    UNLOCK TABLES;
EOF

관련 정보