この記事では、主に Linux での複数の mysql5.7.19tar.gz インストール チュートリアルを詳しく紹介します。興味のある方は参考にしてください。
初心者向けの Linux での初めての MySQL インストール - 5.7 については、前回の記事を参照してください。 .19 バージョンのチュートリアルを既にインストールしている場合は、この記事を読んで Linux に複数の mysql-5.7.19 をインストールしてください。
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql shell> mkdir mysql-files 查看下有没有data目录如果没有的话增加个命令(mkdir data) shell> chmod 750 mysql-files shell> chown -R mysql . shell> chgrp -R mysql . shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5 shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 and up shell> chown -R root . shell> chown -R mysql data mysql-files shell> bin/mysqld_safe --user=mysql & # Next command is optional shell> cp support-files/mysql.server /etc/init.d/mysql.server
を使用してください。インストールする ログインステップ 5 に直接ジャンプできます
3-2 複数のデータベースをインストールするには、次のコマンドに従う必要があります:
次に、ログ ファイル /xcxyz/log/mysql/error.log を作成します
[mysqld] basedir= /usr/local/mysql-5.7.19-3307 datadir = /usr/local/mysql-5.7.19-3307/data port = 3307 character-set-server=utf8 server_id = 11 #该socket最好指定,不指定的话默认的话 是使用的默认的socket文件 而且登陆数据库的时候会有我下面的问题 socket = /tmp/mysql3307.sock log-error = /xcxyz/log/mysql/error.log pid-file = /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql shell> mkdir mysql-files
2-3 現在のディレクトリを承認します:
shell> chmod 750 mysql-files shell> chown -R mysqlosf . shell> chgrp -R mysqlosf .
2-4
ログ出力を表示します: vi /xcxyz/log/mysql/error。 log
2017-07-24T03:13:47.933684Z 0 [警告] 暗黙的な DEFAULT 値を含む TIMESTAMP は非推奨です。 --explicit_defaults_for_timestamp サーバー オプションを使用してください (詳細についてはドキュメントを参照してください)。
2017-07-24T03: 13:50.262941Z 0 [警告] InnoDB: 外部キー制約システム テーブルを作成しています。
2017-07-24T03:13:50.330756Z 0 [警告] 既存の UUID が見つからないため、このサーバーが初めて起動されたと想定されます: 1d702294-701e-11e7-98a1-00163e30bbf6.2017-07-24T03:13: 50.340474Z 0 [警告] Gtid テーブルを使用する準備ができていません。テーブル 'mysql.gtid_executed' を開くことができません。
2017-07-24T03:13:50.344419Z 1 [注意] root@localhost に対して一時パスワードが生成されます。 jZpgHhigx5>i (特に後でパスワードを初期化することが重要です)
2-5 キーを確立
shell> bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf
2-6 割り当てを再認可する
shell> chown -R root . shell> chown -R mysql data mysql-files
bin/mysqld_safe --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --user=mysqlosf &
shell> cp support-files/mysql.server /etc/init.d/mysql.server
2-8 mysql start ps -ef | grep mysql
4 mysql にログインしてパスワードを変更し、今すぐ一時パスワードを使用します
ここで別の問題があります(笑)、ログインできません
ユーザー「root」@「localhost」のアクセスが拒否されました(パスワード:YESを使用)解決策は一番下にあります
ログインするとでは、先ほどの一時パスワードを直接使用してログインし、パスワードを設定できます
'root'@'localhost'
のパスワードを変更します:
SET PASSWORD = PASSWORD('root'); ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; flush privileges;
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
7-ローカル接続をテストします
ソリューションのインストール後、ログインできません: 上記の私と同じ場合
理由は、下の赤いボックス内の英語が私のものであるためです。2番目のmysqlはソケットとポートを指定する必要があります。英語の意味は、ソケットを指定しないと、複数の mysql をインストールするためデフォルトのソケットが選択されるので、これを指定する必要がありますmysql --socket=/tmp/mysql3307.sock --port=3307 -uroot -p
5-重置密码:
5-1关闭进程
kill `cat /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid`
5-2创建文件mysql-init
5-2-1文件内容
第一种内容:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysqlosf';
保存内容之后启动
代码如下:
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &
如果上述内容不成功选择第二种内容
UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
保存内容之后启动
代码如下:
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &
以上がLinux での複数の mysql5.7.19 (tar.gz) のインストールに関する詳細なグラフィック チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。