MySQL 8.0.19 インストールチュートリアル

MySQL 8.0.19 インストールチュートリアル

公式サイトからインストールパッケージをダウンロードします: mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

インストール環境: CentOS Linux リリース 7.5.1804 (Core)

インストール パッケージを解凍します。

mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz をコピーします。
tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar

環境変数:

yum install -y gcc gcc-c++ make cmake automake ncurses-devel bison bison-devel tcp_wrappers-devel libaio libaio-devel perl-Data-Dumper net-tools

関連するユーザーとグループを作成します。

[root@localhost ~]# グループ追加 mysql
[root@localhost ~]# useradd -g mysql -d /home/mysql -m -p mysql mysql

関連するディレクトリを作成します。

[root@localhost ~]# mkdir -p /data/mysql/;chown -R mysql.mysql /data/mysql/
[root@localhost ~]# mkdir -p /data/tmp/;chown -R mysql.mysql /data/tmp/

設定ファイルを編集します。

[root@localhost tmp]# vim /etc/my.cnf
[root@localhost mysql]# cat /etc/my.cnf
[クライアント]
ポート= 3306
ソケット = /tmp/mysql.sock
## MySQL サーバー
[mysqld]
ポート = 3306
ソケット = /tmp/mysql.sock
ユーザー = mysql
外部ロックをスキップ
名前解決をスキップ
#許可テーブルをスキップする
#ネットワークをスキップ
########################################### ディレクトリ
ベースディレクトリ=/usr/local/mysql
データディレクトリ=/data/mysql
tmpdir=/データ/tmp
secure_file_priv=/data/tmp
############################################# いくつかのアプリ
ログエラー=mysql.err
pidファイル=/data/mysql/mysql.pid
ローカル入力ファイル=1
イベントスケジューラ=0
連合した
デフォルトのストレージエンジン=InnoDB
#デフォルトのタイムゾーン= '+8:00'
log_timestamps=システム
文字セットクライアントハンドシェイク = FALSE
文字セットサーバー = utf8mb4
照合サーバー = utf8mb4_unicode_ci
init_connect = '名前をutf8mb4に設定'
#全文
innodb_optimize_fulltext_only
ft_min_word_len=1
#ft_最大単語長
innodb_ft_min_token_size=1
############################################ メモリの割り当てと myisam の構成
最大接続数=3000
最大接続エラー数=10000
キーバッファサイズ = 16M
最大許容パケット = 16M
テーブルオープンキャッシュ = 10240
ソートバッファサイズ = 2M
読み取りバッファサイズ = 2M
読み取りバッファサイズ = 2M
結合バッファサイズ=2M
myisam_sort_buffer_size = 4M
#ネットバッファ長 = 2M
スレッドキャッシュサイズ = 24
tmp_table_size=1G
最大ヒープテーブルサイズ=1G
#スレッド同時実行数 =48
######################################### レプリケーション
サーバーID = 101096
ログ bin = mysql bin
binlog_format=混合
最大バイナリログサイズ=1G
ログスレーブ更新=true
log_bin_trust_function_creators=true
binlog_expire_logs_seconds=259200 #binlog の有効期限(秒単位) replicate-ignore-db=mysql
複製無視DB=テスト
複製無視DB=情報スキーマ
レプリケート-無視-db=パフォーマンススキーマ
レプリケートワイルド無視テーブル=mysql.%
複製ワイルド無視テーブル=テスト.%
レプリケートワイルド無視テーブル=information_schema.%
レプリケートワイルド無視テーブル=パフォーマンススキーマ.%
小文字のテーブル名 = 1
#読み取り専用=1
マスター情報リポジトリ=テーブル
リレーログ情報リポジトリ=テーブル
############################################# 遅いクエリ
長いクエリ時間=1
遅いクエリログ=1
slow_query_log_file=/data/mysql/slow-query.log
インタラクティブタイムアウト=600
待機タイムアウト=600
############################################### innodb を構成します
innodb_file_per_table
innodb_data_home_dir = /data/mysql
innodb_log_group_home_dir = /data/mysql
innodb_buffer_pool_size = 4G
innodb_log_file_size = 1G
innodb_log_files_in_group = 3
innodb_log_buffer_size = 32M
innodb_flush_log_at_trx_commit = 1
同期バイナリログ=0
sql-mode="STRICT_TRANS_TABLES、NO_ENGINE_SUBSTITUTION、NO_ZERO_IN_DATE、NO_ZERO_DATE、ERROR_FOR_DIVISION_BY_ZERO"
##########################################
[mysqlダンプ]
素早い
最大許容パケット = 16M
[mysql]
自動再ハッシュなし
デフォルトの文字セット = utf8mb4
プロンプト=\\U \\h \\R:\\m:\\s \\d>
[マイサムチク]
キーバッファサイズ = 20M
ソートバッファサイズ = 20M
読み取りバッファ = 2M
書き込みバッファ = 2M
[mysqlホットコピー]
対話タイムアウト

ルートディレクトリ:

[root@localhost ~]# mv mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/mysql
[root@localhost ~]# chown -R mysql.mysql /usr/local/mysql

初期化します。デフォルトのパスワードは空です。

[root@localhost ~]# /usr/local/mysql/bin/mysqld --initialize-insecure --basedir=/usr/local/mysql --datadir=/data/mysql/ --user=mysql

ログでエラーを確認します:

[root@localhost ~]# cat /data/mysql/mysql.err
2020-01-20T15:11:46.156633+08:00 0 [システム] [MY-013169] [サーバー] /usr/local/mysql/bin/mysqld (mysqld 8.0.19) プロセス 14822 としてサーバーの初期化が進行中です
 100 200 300 400 500 600 700 800 900 1000
 100 200 300 400 500 600 700 800 900 1000
 100 200 300 400 500 600 700 800 900 1000
2020-01-20T15:12:31.118120+08:00 5 [警告] [MY-010453] [サーバー] root@localhost が空のパスワードで作成されました。--initialize-insecure オプションをオフにすることを検討してください。

環境変数と起動:

[root@localhost mysql]# vim /etc/profile
#最後に export MYSQL_HOME=/usr/local/mysql を追加します
PATH=$PATH:$MYSQL_HOME/bin/
[root@localhost mysql]# ソース /etc/profile
 [root@localhost mysql]# cd /usr/local/mysql
 [root@localhost mysql]# cp -f support-files/mysql.server /etc/init.d/mysqld

 [root@localhost mysql]# chmod 755 /etc/init.d/mysqld

 [root@localhost mysql]# chkconfig --add mysqld

 [root@localhost mysql]# chkconfig mysqld をオンにする

データベースを起動します。

[root@localhost mysql]# /etc/init.d/mysqld を起動します

パスワードを変更し、ユーザーを作成します。8.0 では、権限付与によるユーザーの自動作成がキャンセルされました。create user を使用してユーザーを作成し、権限を付与します。

[root@localhost ~]# mysql -uroot -p
パスワードを入力してください:
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは8です
サーバーバージョン: 8.0.19 MySQL コミュニティサーバー - GPL

Copyright (c) 2000, 2020, Oracle およびその関連会社。無断複写・転載を禁じます。

OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。

ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。
root@localhost localhost 15:43:29 (なし)>ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
クエリは正常、影響を受けた行は 0 行 (0.01 秒)
root@localhost localhost 15:49:30 (なし)>CREATE USER ceshi@'localhost' IDENTIFIED BY 'password';
クエリは正常、影響を受けた行は 0 行 (0.01 秒)

root@localhost localhost 15:50:07 (なし)> 'ceshi'@'localhost' に *.* の SELECT 権限を付与します。
クエリは正常、影響を受けた行は 0 行、警告は 1 件 (0.00 秒)

root@localhost localhost 15:51:10 (なし)>ceshi@localhost の許可を表示します。
+--------------------------------------------+
| ceshi@localhost への助成金 |
+--------------------------------------------+
| `ceshi`@`localhost` に *.* の SELECT 権限を付与します |
+--------------------------------------------+
セット内の 1 行 (0.00 秒)

ps: MySql8.0.19 インストール ピット レコード

1. エラー 1820 (HY000): このステートメントを実行する前に、ALTER USER ステートメントを使用してパスワードをリセットする必要があります。

解決策は次のとおりです。

mysql> ALTER USER USER() は 'Xiaoming250' によって識別されます。

2. ルートパスワードを変更する

ALTER ユーザー 'root'@'localhost' が '新しいパスワード' によって識別されます。

要約する

上記は編集者が紹介したMySQL8.0.19のインストールチュートリアルです。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残してください。編集者がすぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Windows 10 での MySQL 8.0.19 のインストールと設定のチュートリアル
  • MySQL 8.0.19 winx64 インストールチュートリアルと Windows 10 での初期パスワードの変更
  • MySQL 8.0.19 のインストールと設定方法のグラフィックチュートリアル
  • mysql 8.0.19 winx64.zip インストール チュートリアル
  • mysql 8.0.19 win10 クイックインストールチュートリアル
  • MySQL 8.0.19 インストール詳細チュートリアル (Windows 64 ビット)

<<:  Nginx リバース プロキシ springboot jar パッケージ プロセス分析

>>:  Vue2.xは、ユーザーのログインと終了を実装するためにルーティングナビゲーションガードを設定します。

推薦する

Ubuntu 18仮想マシンのクローン作成後に同じIPアドレスになる問題の解決方法

序文最近、仮想マシンを使用して Ubuntu 18.04 をインストールしました。クローン作成後、I...

Linux で rpm パッケージを見つけるために CD をマウントする方法

前面に書かれたLinux を使用する際にソフトウェアをインストールする必要がある場合があります。もち...

antd pro に基づく SMS 認証コード ログイン機能 (プロセス分析)

目次まとめ全体的なプロセスフロントエンドページコード検証コードとログイン サービスをリクエストする ...

Vue2とVue3のライフサイクルの比較の詳細な理解

目次サイクル比較使用法要約するサイクル比較ヴュー2ヴュー3作成前設定作成された設定マウント前マウント...

Ubuntu 19 以下に Android Studio をインストールするチュートリアル

過去の経験から言うと、タスクを完了した後にメモを取るのは良い習慣です。インストール環境はUbuntu...

Vue は Axios リクエスト フロントエンドのクロスドメイン問題をどのように解決するのか

目次序文1. クロスドメインの問題はなぜ発生するのでしょうか? 2. 解決策クロスオリジンリソース共...

JavaScript を使用してセカンダリ メニューを作成する

この記事では、セカンダリメニュー効果を実現するためのJavaScriptの具体的なコードを参考までに...

JS ベースのページフローティングボックスを実装するためのサンプルコード

スクロール バーを下に引くと、主にposition:fixed;スタイルにより、フローティング ボッ...

10分でDockerを使ったマイクロサービスのデプロイ方法を学ぶ

Docker は 2013 年のリリース以来、広く注目され、ソフトウェア業界を変える可能性を秘めてい...

HTMLページの読み込み速度を上げる方法

(1)HTTPリクエストを減らす。 (リソース ファイルをマージし、イメージ スプライトを使用します...

React Native APPのアップデートに関する簡単な説明

目次アプリ更新プロセス大まかなフローチャートアプリ情報の更新1. まず取得する必要があるファイルアド...

Centos6 で 20TB を超えるディスクをパーティション分割してフォーマットするためのサンプル コード

1. サーバー環境の構成: 1. ディスクパーティションを確認します。最近、あるプロジェクト内のサー...

初心者向けのMySQLデータベースとテーブルDDLの作成と操作の学習

目次1. データベースを操作する1.1 データベースを作成する1.2 データベースをクエリする1.3...

HTML で 2 列レイアウトを実装する方法の例 (左側は固定幅、右側は適応幅)

HTMLは2列レイアウトを実装し、左側は固定幅、右側は適応幅です。実装1: <スタイル>...

Ubuntu 16.04 サーバーで MySQL を設定し、リモート接続を有効にする方法

背景最近、Node.js を勉強しているのですが、クラウド サーバーがあることを思い出しました。しか...