업데이트 후 MySQL 시작 실패


0

나는 요세미티 10.10.5에 있는데, 지금은 구형 MySQL을 최신 버전으로 업데이트했다. 기존 데이터베이스 / usr / local / mysql / data / somewhere safe의 복사본을 만들었습니다.

brew와 amp;를 통해 MySQL을 설정하려고했습니다. ~을 통해 패키지 설치 프로그램 , 그러나 나는 그럭저럭 양쪽 방향으로 어수선하게 될 수 있었다.

패키지 설치 프로그램을 통해 생성 된 환경 설정 패널에는 새로운 아이콘이 있지만 MySQL을 시작하지는 않습니다.

나는 달리기를 시도했다. mysql.server start 터미널에 있지만 다음과 같은 오류가 발생했습니다 :

Starting MySQL
. ERROR! The server quit without updating PID file (/usr/local/var/mysql/myname.local.pid).

나는 노력했다. 양조 서비스가 mysql을 시작합니다. 나는 얻는다 :

==> Successfully started `mysql` (label: homebrew.mxcl.mysql)

하지만 Sequel Pro 또는 터미널을 통해 액세스 할 수 없습니다. 양조 서비스가 mysql을 시작하기 때문에 나는 시도한다. MySQL 그러나 나는 얻는다 :

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

나는 다음과 같은 기록들을 가지고있다. /usr/local/var/mysql/myname.local.err

2016-03-30T21:58:53.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
2016-03-30T21:58:53.791807Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2016-03-30T21:58:53.792478Z 0 [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2016-03-30T21:58:53.792493Z 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.
2016-03-30T21:58:53.792573Z 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.
2016-03-30T21:58:53.793639Z 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.7.11) starting as process 5922 ...
2016-03-30T21:58:53.807159Z 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
2016-03-30T21:58:53.829847Z 0 [ERROR] Plugin keyring_file reported: 'keyring_file initialization failure. Please check if the keyring_file_data points to readable keyring file or keyring file can be created in the specified location. The keyring_file will stay unusable until correct path to the keyring file gets provided'
2016-03-30T21:58:53.834848Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
...
2016-03-30T21:58:54.063594Z 0 [Note] InnoDB: Loading buffer pool(s) from /usr/local/mysql-5.7.11-osx10.9-x86_64/data/ib_buffer_pool
2016-03-30T21:58:54.065139Z 0 [Note] Plugin 'FEDERATED' is disabled.
2016-03-30T21:58:54.066443Z 0 [Note] InnoDB: Buffer pool(s) load completed at 160331  0:58:54
2016-03-30T21:58:54.073134Z 0 [Warning] System table 'plugin' is expected to be transactional.
2016-03-30T21:58:54.081061Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2016-03-30T21:58:54.083246Z 0 [Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key
2016-03-30T21:58:54.090221Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
2016-03-30T21:58:54.090273Z 0 [Note] IPv6 is available.
2016-03-30T21:58:54.090299Z 0 [Note]   - '::' resolves to '::';
2016-03-30T21:58:54.090310Z 0 [Note] Server socket created on IP: '::'.
2016-03-30T21:58:54.091554Z 0 [Warning] Failed to open optimizer cost constant tables

2016-03-30T21:58:54.099383Z 0 [ERROR] Fatal error: mysql.user table is damaged. Please run mysql_upgrade.
2016-03-30T21:58:54.099725Z 0 [ERROR] Aborting

2016-03-30T21:58:54.099763Z 0 [Note] Binlog end
2016-03-30T21:58:54.100531Z 0 [Note] Shutting down plugin 'ngram'
...
2016-03-30T21:58:55.476257Z 0 [Note] Shutting down plugin 'binlog'
2016-03-30T21:58:55.476370Z 0 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete

2016-03-30T21:58:55.6NZ mysqld_safe mysqld from pid file /usr/local/mysql/data/myuser.local.pid ended

mysql / mariadb / Oracle MySQL을 제거하고 다시 시작하십시오. 어느 한 쪽 homebrew mariadb / mysql 또는 오라클 MySQL!
klanomath

안녕하세요 @ klanomath 내 설치에 mariadb가 없습니다. 플러스 내 데이터를 어디에 MySQL의 mariadb에, 그래서 내가 그렇게한다면 내가 MySQL에서 mariadb 내 백업 DB를 마이 그 레이션 할 수 있을까요?
HaCos

AFAIR homebrew는 mariadb를 사용합니다 - 여전히 mysql이라고 불립니다 (mariadb는 mysql의 "후속"임)
klanomath

@klanomath mariadb가 설치에 설치되지 않았습니다. 나는 또한 my.cnf를 놓치고있다. / etc / 또는 / usr / local / mysql /
HaCos

때로는 .err 파일을 다음과 같이 삭제하여 이런 오류를 해결할 수있었습니다. /usr/local/var/mysql/ MySQL을 시작합니다.
pietrodn

답변:


1

mysql이 mysql 사이트의 brew와 via 패키지를 통해 설치 되었기 때문에이 모든 혼란이 일어 났음을 깨달았다.

나를위한 해결책은 mysql을 완전히 제거하는 것이 었습니다. BREW를 통해 다시 설치합니다.

내가 만든 새 데이터베이스 데이터는 다음 위치에 있습니다. /usr/local/var/mysql/

mysql이 돌아 오는 곳에서 실행하기 /usr/local/bin/mysql

실행중인 mysql.server 시작 | 중지 | 다시 정상적으로 작동하는 것 같습니다. 또한 sequel pro를 통해 db에 액세스 할 수 있지만 작업을 할 때 rake db를 실행하는 레일 프로젝트를 설정하려고했지만 만들었지 만 받았습니다.

레이크가 중단되었습니다! LoadError :   dlopen (/Users/myuser/.rvm/gems/ruby-2.2.4/extensions/x86_64-darwin-14/2.2.0/mysql2-0.4.3/mysql2/mysql2.bundle,   9) : 라이브러리가로드되지 않음 :   / usr / local / Cellar / mysql / 5.5.19 / lib / libmysqlclient.18.dylib 참조 된   에서:   /Users/myuser/.rvm/gems/ruby-2.2.4/extensions/x86_64-darwin-14/2.2.0/mysql2-0.4.3/mysql2/mysql2.bundle   이유 : 이미지를 찾을 수 없음 -   /Users/myuser/.rvm/gems/ruby-2.2.4/extensions/x86_64-darwin-14/2.2.0/mysql2-0.4.3/mysql2/mysql2.bundle

  • libmysqlclient.18.dylib가 내 설치 프로그램이나 디렉토리 ..Cellar / mysql / 5.5.19 /에 존재하지 않습니다.
  • 있다 usr / local / Cellar / mysql / 5.7.11 / lib /
  • 그리고 거기에있다. libmysqlclient.dylib -> libmysqlclient.20.dylib ../libmysqlclient.18.dylib는 내 시스템에 없습니다.

~ / .bash_profile에는 내보내기가 있습니다. PATH=/usr/local/bin:$PATH

거기 ~ ~ .bash_rc에

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

~ / .zshrc에 있습니다.

export PATH="/usr/local/sbin:$PATH"

내가 시스템 경로를 엉망으로 만든 것처럼 보입니까?


첫 번째 문장이 문제입니다 .Homebrew는 / usr / local을 사용하므로 다른 경로는 사용할 수 없습니다.
Mark

안녕하세요 @ 마크, 전 MySQL을 완전히 & amp; 양조를 통해 처음부터 다시 설치했습니다. 문제는 일부 경로 또는 rv mor 레일이 이전 버전의 libmysqlclient를 찾고 있다는 것입니다. 어떤 생각이 어떻게 해결할 수 있습니까?
HaCos
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.