1. MySQL5.7バイナリデプロイメント

1. MySQL5.7バイナリデプロイメント

1.環境を準備します

最小メモリが512のCentos7.6システムを準備します。2つのディスクをシステムディスクとしてマウントし、もう1つをMySQLデータディスクとしてマウントするのが最適です。

1.ホストを変更し、selinux、firewalldを閉じます

hostnamectl set-hostname mysql01
sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config
systemctl stop firewalld && systemctl disable firewalld

2.ディレクトリを作成します

#1.创建程序目录
mkdir /application
#2.创建存放软件包目录
mkdir tools

3.データディスクをフォーマットし、/ dataの下にマウントします

#1.格式化/dev/sdb磁盘
mkfs.xfs /dev/sdb
#2.mount挂载加入开机自启、每个UUID值不一样通过 blkid命令查看
echo "UUID=26390314-0703-4200-a181-0f8fdaf09368 /data xfs defaults 0 0 " >> /etc/fstab
#3.mount 挂载
#4.查看是否挂载情况
[root@mysql01 ~]# df -Th | grep "/data"
/dev/sdb                xfs        20G   33M   20G    1% /data

2. MySQL5.7をバイナリモードでデプロイします

mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
ダウンロードアドレスhttps://downloads.mysql.com/archives/community/
ここに画像の説明を挿入

1.バイナリパッケージを/ toolsディレクトリにアップロードし、/ applicationプログラムディレクトリに解凍します。

cd /tools && tar zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /application/
cd /application/ && mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql-5.7.26

2.ユーザーの作成は元の環境を処理します

yum remove mariadb-libs-5.5.60-1.el7_5.x86_64 -y   或手动删除/etc/my.cn文件
rpm -qa |grep mariadb
useradd -s /sbin/nologin mysql

3.環境変数を設定します

echo 'PATH=/application/mysql-5.7.26/bin:$PATH' >> /etc/profile
source /etc/profile

4.データを初期化します

#1.创建数据目录并授权
mkdir /data/mysql/data -p && chown -R mysql.mysql /data
#2.初始化 (二选一)
mysqld --initialize --user=mysql --basedir=/application/mysql-5.7.26 --datadir=/data/mysql/data			//有临时密码初始化
mysqld --initialize-insecure --user=mysql --basedir=/application/mysql-5.7.26 --datadir=/data/mysql/data		//无临时密码初始化

5.my.cnfファイルを構成します

cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/application/mysql-5.7.26
datadir=/data/mysql/data 
socket=/tmp/mysql.sock 
server_id=6
port=3306
log_error=/data/mysql/mysql.log 
# log_bin=/data/mysql/mysql-bin
[mysql] 
socket=/tmp/mysql.sock
EOF

6、データベースを起動します

#1.默认启动方式
[root@db01 ~]#cd /application/mysql/support-files/
[root@db01 support-files ]#./mysql.server start

#2.设置sys-v  service启动
[root@db01 /etc/init.d]# cp /application/mysql/support-files/mysql.server  /etc/init.d/mysqld 
[root@db01 /etc/init.d]# service mysqld restart

#3.设置systemd启动
注意: sysv方式启动过的话,需要先提前关闭,才能以下方式登录
cat >/etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql-5.7.26/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF

启动
systemctl start mysqld && systemctl enable mysqld

MySQLデータベースの起動の失敗を分析して対処する方法

PID同様のエラーを更新せずに

ログを見る:
どこ?
/data/mysql/data/hostname.err
[エラー]コンテキスト
考えられる状況:
/etc/my.cnfパスが等しくない
/tmp/mysql.sockファイルが変更または削除された
データディレクトリのアクセス許可がmysql
パラメータで正しく修正されていない

#报错
Starting MySQL.2020-09-01T07:32:45.953856Z mysqld_safe error: log-error set to '/data/mysql/mysql.log', however file don't exists. Create writable for user 'mysql'.
 ERROR! The server quit without updating PID file (/data/mysql/data/sonarqube.pid).

解决
touch /data/mysql/mysql.log
chown -R mysql.mysql /data/mysql/mysql.log

検証:netstat -anpt

7.管理者パスワードの設定(フォーマット時に一時パスワードなし)

[root@db01 ~]# mysqladmin -uroot -p password adminroot
Enter password: 													#此处直接回车

おすすめ

転載: blog.csdn.net/weixin_43357497/article/details/112298661