centos7.7にmysql8.0.18をインストール

1 MySQL をアンインストールする手順

# 1.查看是否安装Mysql
rpm -qa | grep -i mysql
rpm -qa | grep -i MariaDB
# 2.查看MySQL服务是否启动,关闭
service mysql status
service mysql stop
# 3.卸载MySQL安装的组件
rpm -e xxxx --nodeps
或者如下查询和删除一气呵成,也行哦!
rpm -qa | grep -i MariaDB |xargs rpm -e --nodeps
rpm -qa | grep -i mysql |xargs rpm -e --nodeps
# 4.查找并删除MySQL相关的文件
whereis mysql
find / -name mysql
rm -rf xxxx

MySQL をインストールするための 2 つのステップ

依存順序がある

yum -y install numactl
rpm -ivh mysql-community-common-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm

インストールが完了したら開始しないでください。始めないで!始めないで!
最初に /etc/my.cnf を構成して、テーブル名の大文字と小文字を区別しないように設定します

# 在[mysqld]组下添加如下配置
lower_case_table_names=1

mysql サービス関連の操作

# 启动mysql服务
systemctl start mysqld.service
# 停止mysql服务
systemctl stop mysqld.service
# 重启mysql服务
systemctl restart mysqld.service
# 查看mysql服务当前状态
systemctl status mysqld.service
# 设置mysql服务开机自启动
systemctl enable mysqld.service
# 停止mysql服务开机自启动
systemctl disable mysqld.service

#查看默认生成的密码
cat /var/log/mysqld.log | grep password

デフォルトのパスワードでログイン

mysql -hlocalhost -p'aHTf>Vvk4zeo'
mysql> ALTER USER root@localhost IDENTIFIED  BY 'root';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

mysql> SHOW VARIABLES LIKE 'validate_password%'; 
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

mysql> ALTER USER root@localhost IDENTIFIED  BY 'Csdn@123456';

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| validate_password.dictionary_file    |        |
| validate_password.length             | 8      |
| validate_password.mixed_case_count   | 1      |
| validate_password.number_count       | 1      |
| validate_password.policy             | MEDIUM |
| validate_password.special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.02 sec)
mysql> set global validate_password.policy=LOW; 

mysql> set global validate_password.length=4;

mysql> ALTER USER root@localhost IDENTIFIED  BY 'root';

mysql パスワード ポリシー関連のパラメータについて;
1) validate_password.length は、固定パスワードの全長です;
2) validate_password.dictionary_file は、パスワード検証用のファイル パスを指定します;
3) validate_password_mixed_case_count には、少なくとも大文字/小文字の合計数が含まれている必要があります4) validate_password_number_countパスワード
全体には少なくともアラビア数字の数が含まれている必要があります;
5) validate_password_policy はパスワードの強度検証レベルを指定します, デフォルトは MEDIUM です;
validate_password_policy の値について:
0/LOW:長さ;
1/MEDIUM: 長さ、数字、大/小文字、特殊文字を検証;
2/STRONG: 長さ、数字、大/小文字、特殊文字、辞書ファイルを検証;
6) validate_password_special_char_count パスワード全体には、少なくとも特殊文字の数が含まれている必要があります。

リモート ログイン データベースのセットアップ

-- 切换数据库
use mysql;
-- 查看user表中的用户
select host,user,authentication_string from user;
-- 授权root远程登录
update user set host='%' where user ='root';



-- 授权root远程登录
GRANT ALL PRIVILEGES 
ON *.* 
TO 'root'@'%' 
IDENTIFIED BY 'Csdn@123456' 
WITH GRANT OPTION;
-- 刷新权限
flush privileges;  

開始された mysql テーブル名の大文字と小文字の区別の問題:

1. MySQL を停止します。
2. データ ディレクトリを削除します。つまり、/var/lib/mysql ディレクトリを削除します。
rm -rf /var/lib/mysql
3. MySQL 構成ファイル (/etc/my.cnf) に追加します。
lower_case_table_names=1
4. MySQL を起動します。

3 mysql を再初期化する 2 つの方法

1. シンプルで失礼な mysql を再インストールします。
2. コマンドを使用してデータベースをクリアし、mysql サービスを再初期化します。

-- 停止mysql服务
net stop mysql;

-- 删除mysql服务
mysqld remove;

-- 删除mysql安装目录下的data文件夹,可以通过命令查找mysql的数据库目录
select @@datadir;

-- 初始化mysql,重新初始化mysql之后,将重新生成data目录
mysqld --initialize;

-- 初始化时,也可以通过增加insecure参数来生成空密码。
mysqld --initialize-insecure;

3.输入安装命令mysqld install
sc query mysql,查看一下名为mysql的服务:
5.命令sc delete mysql,删除该mysql

4 selinuxがオンになっているときにmysqlのデータディレクトリを変更します

# 1> 关闭msyqld服务
service mysqld stop

# 2> 准备新的存放地点(/opt/mysql/data)
# 2.1> 新建文件夹
mkdir -p  /opt/mysql/data
# 2.2> 修改权限
chmod  755 /opt/mysql/data
# 2.3> 复制以前的mysql库数据
cp -r /var/lib/mysql/* /opt/mysql/data
# 2.4> 更改文件夹的所有者
chown -R mysql:mysql /opt/mysql/data

# 3> 修改mysql对应的selinux相关配置
semanage fcontext -a -t mysqld_db_t "/opt/mysql/data(/.*)?"
restorecon -R -v /opt/mysql/data

# 4> 修改mysql数据存储位置
vi /etc/my.cnf
datadir=/opt/mysql/data
# 5> 启动msyqld服务
service mysqld start

5 libaio の依存処理

[michael@hadoop104 software]$ sudo rpm -ivh mysql-community-server-8.0.21-1.el7.x86_64.rpm 
warning: mysql-community-server-8.0.21-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
	libaio.so.1()(64bit) is needed by mysql-community-server-8.0.21-1.el7.x86_64
	libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-8.0.21-1.el7.x86_64
	libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-8.0.21-1.el7.x86_64

[michael@hadoop104 software]$ sudo yum install libaio -y

「デバイスに空き容量がありません」の問題について

1. 最初に 2 つのコマンド
df -hを導入して、ディスクの使用状況を確認します。 df -i で、
inode の使用状況を確認します。データは重要です。そうしないと、ピットに落ちてしまいます。

[root@linuxidc ~]# cd /app/logs/
[root@linuxidc ログ]# ls -lh /bin/ls
-rwxr-xr-x. 1 root root 107K Mar 23 02:52 /bin/ls
[root@linuxidc logs]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdc 73K 14K 55K 21% /app/logs
[root@linuxidc logs] # cp /bin/ls .
cp: 書き込み `./ls': デバイスに空き容量がありません[
root@linuxidc ログ]# df -hファイル
システム サイズ 使用済み]#

3. inode が使い果たされる
. この場合、小さなファイルがより多くの inode を占有し、ファイルまたはディレクトリを作成すると 1 つの inode が占有されます. 通常、これらの小さなファイルはスケジュールされたタスクによって引き起こされるため、削除するときは注意してください.

[root@linuxidclogs]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdc 73K 14K 55K 21% /app/logs
[root@linuxidc logs]# df -i
Filesystem Inodes IUsed IFree IUse% Mountedon
/dev/ sdc 16 11 5 69% /app/logs
[root@linuxidc logs]# touch a{1…6}txt
touch: cannot touch `a6txt': No space left ondevice
[root@linuxidc logs]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdc 73K 14K 55K 21% /app/logs
[root@linuxidc logs]# df -i
Filesystem Inodes IUsed IFree IUse% Mountedon
/dev/sdc 16 16 0 100% /app/logs
[root @linuxidc ログ]#


1. 問題内容
デバイスに空き容量がない(ディスク容量不足)
2. ファイル削除の原則
(1) ハードリンク数が 0 (すべてのハードリンクを削除)
(2) プロセスコール数が 0 (プロセスが存在しない)
3. 理由分析ハード
リンク数が 0 で、工程スケジューリング数が 0 でない
4. 工程デモ
(1) 大容量ファイルの作成

[root@linuxidc ~]# seq 500000000 > /var/log/messages
(2) ディスク使用量の表示

[root@linuxidc ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 6.1G 12G 35% /

(3) ログファイル /var/log/messages を削除
[root@linuxidc ~]# rm -rf /var/log/messages
(4) スペースが解放されているか確認

[root@linuxidc ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 6.1G 12G 35% /

(5) ファイルがどのプロセスによって呼び出されているかを確認する

[root@linuxidc ~]# lsof | grep delete
rsyslogd 2839 root 1w REG 8,3 4888888898 393106 /var/log/messages (削除済み)

(6) 該当するサービスを再起動する

[root@linuxidc ~]# /etc/init.d/rsyslog restart
システムロガーのシャットダウン: [ OK ]
システムロガーの起動: [ OK ]

(7) ディスク使用量の確認

[root@linuxidc ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 1.5G 17G 9% /

おすすめ

転載: blog.csdn.net/Michael_lcf/article/details/103414197#comments_25412725