ARM64アーキテクチャでmysql5.7.22をインストールするプロセス全体

ARM64アーキテクチャでmysql5.7.22をインストールするプロセス全体

MySQLダウンロードアドレス:

https://obs.cn-north-4.myhuaweicloud.com/obs-mirror-ftp4/database/mysql-5.7.27-aarch64.tar.gz

1. mysqlユーザーグループとmysqlユーザーを追加してmysqlプロセスを分離する
# グループ追加 -r mysql && ユーザー追加 -r -g mysql -s /sbin/nologin -M mysql
2. 依存ライブラリをインストールする
# yum インストール -y libaio*
3. MySQLをダウンロードして解凍する
# wgethttps://obs.cn-north-4.myhuaweicloud.com/obs-mirror-ftp4/database/mysql-5.7.27-aarch64.tar.gz
# tar xzvf mysql-5.7.27-aarch64.tar.gz -C /usr/local/
4.Mysqlを設定する
# mv /usr/local/mysql-5.7.27-aarch64 /usr/local/mysql
# mkdir -p /usr/local/mysql/logs
# chown -R mysql:mysql /usr/local/mysql
# ln -sf /usr/local/mysql/my.cnf /etc/my.cnf
# cp -rf /usr/local/mysql/extra/lib* /usr/lib64/
# mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.old
# ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6

# ブートを設定する
# cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# systemctl でmysqldを有効にする
5. 環境変数を追加する
# vim /etc/プロファイル

次の 2 行のコードを追加します。
MYSQL_HOME=/usr/local/mysql をエクスポートします。
エクスポート PATH=$PATH:$MYSQL_HOME/bin

# ソース /etc/profile

5. MySQLを初期化して起動する
# パスワードなしでログインを初期化する
# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

! ! !ここで実行中にエラーが発生しました:

解決:

vim /etc/my.cnf
ファイルを表示し、datadir=... を探します。
チェック: datadir=/usr/local/mysql/data、 
これはデータ保存ディレクトリです。
/usr/local/mysql/data に入ると、確かにデータがあることがわかりました。
/usr/local/mysql/dataをバックアップします。
cd /usr/local/mysql
mv データ データ.bak
次に以下を実行します:
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

#mysqlを開く

# systemctl で mysqld を起動します

#ステータスを確認する
# systemctl ステータス mysqld

これは、mysql が正常にインストールされたことを示します。

MySQL の初期パスワードはインストール時に間違えるとおかしくなりますが、以前 Win10 にインストールした際にこの状況が発生したことがあるため、ここではまずパスワードの確認なしで設定します。

mysql インストール パスで my.ini を見つけます (Linux システムでは通常 /etc/my.ini にあります)
vim が開きます:
[mysqld] 行の下:
パスワード検証をスキップするには skip-grant-tables を追加してください。 ! !私の環境でのファイル名はmy.cnfです。

ログインするにはmysql -u rootを使用します

! ! !開発ボードを再起動した後、エラーが発生しました:

# mysql -u ルート
-bash: mysql: コマンドが見つかりません

理由: これは、システムがデフォルトで /usr/bin でコマンドを検索するためです。コマンドがこのディレクトリにない場合は、もちろん見つかりません。必要なのは、/usr/bin ディレクトリへのリンクをマップすることです。これは、リンク ファイルを作成することと同じです。
まず、mysql コマンドまたは mysqladmin コマンドのフルパスを知る必要があります。たとえば、mysql のパスは /usr/local/mysql/bin/mysql です。次のようにコマンドを実行できます。

# ln -s /usr/local/mysql/bin/mysql /usr/bin

! ! !エラーを表示する

理由は、libncurses.so.5 共有ライブラリが見つからないことです。

解決:

私は EAIDK-610 開発ボードを使用していますが、ボードの /lib64 フォルダーに libncurses.so.6.1 ファイルがあることがわかりました。
したがって、ソフト リンクを使用して libncurses.so.6.1 から libncurses.so.5 を指すリンクを作成すると、この共有ライブラリは下位互換性を持つことができます。
詳細については以下の画像例をご参照ください。

mysql -u root を使用して再度ログインします。ログインは成功しました。

ARM64 アーキテクチャで mysql5.7.22 をインストールするプロセス全体に関するこの記事はこれで終わりです。ARM64 での mysql5.7.22 のインストールに関する関連コンテンツの詳細については、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • iOS アセンブリ チュートリアル - ARM64 アセンブリの基本チュートリアル
  • MySQL 5.7.22 バイナリパッケージのインストールとインストール不要版 Windows 設定方法
  • Ubuntu16.04 インストール mysql5.7.22 グラフィックチュートリアル
  • MySQL サーバー コミュニティ バージョン MySQL 5.7.22 winx64 を win10 にインストールする方法
  • MacでのMySQL5.7.22のインストール手順

<<:  Linux サーバーは最大いくつのポートを開くことができますか?

>>:  HTML TextArea でのフォーマット保存の問題の解決方法

推薦する

JS ES の新機能、変数分離割り当て

目次1. 配列の分離割り当て1.1 配列分離割り当てとは何ですか? 1.2 配列分離割り当てに失敗し...

Windows環境でのMySQL 8.0.13無料インストールバージョンの設定チュートリアル

目次圧縮ファイルをダウンロードするアドレス: https://dev.mysql.com/downl...

Vueでlessを使用する問題を解決する

1. less依存関係をインストールします: npm install less less-loade...

js で下線とキャメルケースの変換を実装する (複数の方法)

目次適用シナリオ:方法 1: 正規表現 (推奨)方法2: 配列のreduceメソッドを使用する方法3...

Html/Css (初心者が最初に読むべきガイド)

1. Web標準の意味を理解する - なぜWeb標準を採用するのか***** コンテンツとスタイル...

Baidu の https 認証プロンプト「http サイトを 301 から https サイトにリダイレクトしてください」の解決方法の詳細な説明

最近、ウェブサイトを https アクセスに変換したいのですが、すべて完了した後、Baidu Web...

Node.jsはブレークポイント再開を実装する

目次ソリューション分析スライス履歴書のダウンロード具体的な解決プロセス論理的分析フロントエンドサーバ...

本番環境でのMySQLパラメータsql_safe_updatesの使用に関する詳細な説明

序文アプリケーションのバグや DBA の誤操作が発生した場合、テーブル全体が更新される可能性がありま...

Typescriptの基本構文13個を共有する

目次1. Tsとは何か2. 基本的な文法1. プリミティブデータ型を宣言する2. オブジェクト型を宣...

CSSのtranslate(-50%,-50%)は水平および垂直の中央揃え効果を実現します。

translate(-50%,-50%) 属性:中央に配置するには、長さと幅の 50% だけ上と左...

Linux DHCPサービスの詳細な説明

目次1. DHCP サービス (動的ホスト構成プロトコル) 1. 背景2. 概要3. 利点4.DHC...

CentOS仮想マシンの時刻を変更する方法

上はシステム時間、下はハードウェア時間です。ここでは変更を加えているので、同じくらいの速さになってい...

mysql8.0.11 winx64 インストールと設定のチュートリアル

mysql 8.0.11 winx64のインストールチュートリアルは以下のように記録され、みんなと共...

さまざまなブラウザでのhrタグの説明

通常、人事担当者と会うことはめったにありませんが、一度会うと、それが生死を分けることもあります。 H...

計算機機能を実現するjsバージョン

この記事の例では、計算機機能を実装するためのjsの具体的なコードを参考までに共有しています。具体的な...