Zainstalowałem mysql 5.7 (rozpakowany skompresowany plik binarny) na maszynie RedHat 6 (64-bitowej), na której nie mam uprawnień roota.
Postępuję zgodnie z tym samouczkiem, aby uruchomić serwer SQL i zainicjować bazę danych, ale dostaję błędy. Rozwiązanie zamieszczone tutaj również zawiera błędy i zaleca się, aby nie używać mysql_install_db
już jako przestarzałe.
Co zrobiłem do tej pory : Rozpakowałem plik binarny do katalogu /home/username/mysql/
(zapisanego w zmiennej $MYSQL_HOME
) i tam utworzyłem folder data/
i log/
. Tworzę również dwa pliki my.ini
imy.cnf
my.cnf
[mysqld]
user=mysqluser
my.ini
export BASE_DIR=$MYSQL_HOME
export DATADIR=$BASE_DIR/data
Od $MYSQL_HOME/mysql-install-folder/bin
uciekam
./mysqld --user=mysqluser
--datadir=$DATADIR
--basedir=$MYSQL_HOME
--log-error=$MYSQL_HOME/log/mysql.err
--pid-file=$MYSQL_HOME/mysql.pid
--socket=$MYSQL_HOME/socket
--port=3306
--initialize
Jednak dostaję ten błąd
323$ ./mysqld --user=quad --datadir=$DATADIR --basedir=$MYSQL_HOME --log-error=$MYSQL_HOME/log/mysql.err --pid-file=$MYSQL_HOME/mysql.pid --socket=$MYSQL_HOME/socket --port=3306 --initialize
2018-03-26T18:12:22.795302Z 0 [Warning] Ignoring user change to 'mysqluser' because the user was set to 'mysql' earlier on the command line
2018-03-26T18:12:22.795338Z 0 [Warning] Ignoring user change to 'mysqluser' because the user was set to 'mysql' earlier on the command line
2018-03-26T18:12:22.795352Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-03-26T18:12:22.795410Z 0 [ERROR] Can't find error-message file '/home/username/mysql/share/errmsg.sys'. Check error-message file location and 'lc-messages-dir' configuration directive.
2018-03-26T18:12:22.797158Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2018-03-26T18:12:22.797183Z 0 [ERROR] Aborting
Przede wszystkim nie rozumiem, dlaczego nie zastępuje nazwy użytkownika, mysql
a następnie błąd związany z plikiem komunikatu o błędzie jest dla mnie dość tajemniczy.
EDYTOWAĆ
Postępowałem zgodnie z instrukcjami tutaj , teraz mam ten plik konfiguracyjny w /home/username/mysql
:
my.cnf
[mysqld]
port=3306
socket=[Base MySQL Directory]/thesock
basedir=[Base MySQL Directory]
datadir=[Base MySQL Directory]/data
log-error=[Base MySQL Directory]/data/mysql.err
pid-file=[Base MySQL Directory]/mysql.pid
user=username
[client]
port=3306
socket=[Base MySQL Directory]/thesock
user=username
[mysqladmin]
socket=[Base MySQL Directory]/thesock
user=username
Kiedy skonfiguruję serwer za pomocą
./mysqld --defaults-file=$MYSQL_HOME/my.cnf&
pokazuje mi, że chyba identyfikator procesu
[2] 2281405
ale kiedy próbuję uruchomić klienta
./mysql --defaults-file=/home/SHD_xnqu/mysql/my.cnf
zgłasza błąd
ERROR 1045 (28000): Unknown error 1045
Dzięki za pomoc