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は、ユーザーのログインと終了を実装するためにルーティングナビゲーションガードを設定します。

推薦する

CentOS7でルートパスワードをリセットする方法

レンガを移動するプロセスでは、さまざまな環境および構成の問題があり、毎回異なるエラーが発生します。 ...

HTMLハイパーリンクaタグのhrefジャンプとonclick間の実行順序の例

HTMLハイパーリンクaタグのhrefジャンプとonclickの実行関係htmlのaタグのhrefは...

ドロップダウンリスト選択ボックスを実装するJavaScript

この記事の例では、ドロップダウンリスト選択ボックスを実装するためのJavaScriptの具体的なコー...

CSSはラジオをクリックして2つの画像スタイルを切り替えますが、複数のラジオのうち1つだけをチェックできます。

クリックされたボタンには赤い画像スタイルを実装し、選択されていない他のボタンには灰色の画像スタイルを...

MySQLのMVCCマルチバージョン同時実行制御の実装

1 MVCCとは何かMVCC の正式名称は、マルチバージョン同時実行制御です。データベースへの同時ア...

Linuxカーネルとデバイスツリーのコンパイルと書き込みを分析する

目次1. 材料を準備する2. Linuxカーネルファイルをダウンロードする3. コンパイル4. TF...

Nginx は rtmp ライブ サーバーの実装コードを構築します

1. nginxソースディレクトリに新しいrtmpディレクトリを作成し、git clone http...

Nginx 500 内部サーバーエラーの解決方法

今日、Nginxを使っていたら500エラーが発生しました。エラーコードを検索してみんなに共有しました...

フォームアクションとonSubmitの例

まず、action はフォームの属性です。HTML5 では必須の属性値として定義されています。onS...

ReactRouterの実装

ReactRouterの実装ReactRouterはReactのコアコンポーネントです。主にReac...

HTML ドキュメントに CSS を埋め込む一般的な 3 つの方法

HTMLでCSSを定義するには、埋め込み、リンク、インラインの3つの方法が一般的に使用されます。 1...

Vue 手書き読み込みアニメーション プロジェクト

ページが応答しない場合、白い画面が表示されないように、読み込みアニメーションを表示するのがユーザーフ...

Robots.txtの詳細な紹介

robots.txt の基本的な紹介Robots.txt はプレーンテキスト ファイルであり、Web...

CSS で 3 列レイアウトを実装するいくつかの方法と利点と欠点

序文3 列レイアウトは、その名前が示すように、両側が固定され、中央が適応します。実際の開発では、3 ...

MySQL数千万の大規模データに対する30のSQLクエリ最適化テクニックの詳細な説明

1. クエリを最適化するには、テーブル全体のスキャンを避けてください。まず、where と orde...