yum安装MySQL以及其他操作

yum 安装MySQL

1、使用wget下载MySQLyum源

wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

2、添加MySQLyum源

[root@bogon ~]# sudo yum localinstall mysql80-community-release-el7-3.noarch.rpm -y

4、安装yum工具yum-utils:

sudo yum install -y yum-utils

5、关闭MySQL8.0源

sudo yum-config-manager --disable mysql80-community

6、开启MySQL5.7

sudo yum-config-manager --enable mysql57-community

7、查看当前启用的MySQL版本

yum repolist enabled | grep mysql

  1. 安装MySQL

# yum -y install mysql-community-server

错误信息:

文本

描述已自动生成

解决方法:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

启动MySQL服务

# 启动 systemctl start mysqld

# 查看状态 systemctl status mysqld

  1. 改密码

# 获取原始默认密码: grep ‘temporary password’ /var/log/mysqld.log

用查找到密码登录MySQL数据库

  1. 登录:

mysql -uroot -p

改密码

ALTER USER ‘root’@’localhost’IDENTIFIED BY ‘MyNewPass4!’;

  1. 创建远程访问用户

建用户

create user 'root'@'%' identified with mysql_native_password by '你的密码';

赋权限

grant all privileges on *.* to 'root'@'%' with grant option;

刷新用户权限

flush privileges;

  1. 开启防火墙3306端口

开启3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重新载入

firewall-cmd --reload

  1. 配置MySQL默认编码utf-8

使用vim修改my.cnf文件

vim /etc/my.cnf

添加如下配置

character_set_server=utf8

init_connect='SET NAMES utf8'

#

改完之后。保存退出,重启服务

systemctl restart mysqld

重启完之后检查一下,字符集是否都变成utf-8

先登陆MySQL,在执行

show variables lile ‘%character%’;

开启远程连接
root 用户名
% 所有人都可以访问
password 密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'MyPass4!' WITH GRANT OPTION;

Query OK, 0 rows affected, 1 warning (0.00 sec)

FLUSH PRIVILEGES;

重启服务:

Systemctl restart mysqld

mysql> show variables like 'log_error'; ss

忘记密码跳过密码验证

在配置文件[root@localhost ~]# vim /etc/my.cnf

[mysqld]

skip-grant-tables

skip-networking

重启MySQL服务

Systemctl restart mysqld

然后在命令行界面输入MySQL 回车即可

更改密码

mysql> update mysql.user set authentication_string=PASSWORD('Admin!') where user='root' and host='localhost';

Query OK, 1 row affected, 1 warning (0.01 sec)

Rows matched: 1 Changed: 1 Warnings: 1

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql>

重启服务:systemctl restart mysqld

MySQL查看连接数(连接总数,活跃数,最大并发数)

show variables like ‘%max_connection%’; #查看最大连接数

set global max_connection=1000; #重新设置最大连接数

Mysql> show status like ‘Threads%’;

show status like ‘Threads%’;

Threads_connected :这个数值指的是打开的连接数.

Threads_running :这个数值指的是激活的连接数,这个数值一般远低于connected数值.

Threads_connected 跟show processlist结果相同,表示当前连接数。准确的来说,Threads_running是代表当前并发数

查询数据库当前设置的最大连接数

show status like ‘Threads%’;

查询数据库当前设置的最大连接数

mysql> show variables like '%max_connection%';

+-----------------+-------+

| Variable_name | Value |

+-----------------+-------+

| max_connections | 1000 |

+-----------------+-------+

1 row in set (0.00 sec)

在/etc/my.cnf里边设置数据库最大连接数

[mysqld]

max_connections = 1000

通过查看Threads_created就可以查看MySQl服务器的进程状态

mysql> show global status like 'Thread%';

+-------------------+-------+

| Variable_name | Value |

+-------------------+-------+

| Threads_cached | 2 |

| Threads_connected | 22 |

| Threads_created | 24 |

| Threads_running | 1 |

+-------------------+-------+

4 rows in set (0.00 sec)

查询服务器thread_cache_size的值

mysql> show variables like 'thread_cache_size';

+-------------------+-------+

| Variable_name | Value |

+-------------------+-------+

| thread_cache_size | 9 |

+-------------------+-------+

1 row in set (0.00 sec)

mysql>

命令:show processlist;

如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接。

show processlist命令只列出前100条,如果想全列出请使用show full processlist;

mysql> show processlist;

命令:show status;

mysql>show status like '%变量名%';

变量名如下:

Aborted_clients 由于客户没有正确关闭连接已经死掉,已经放弃的连接数量。

Aborted_connects 尝试已经失败的MySQL服务器的连接的次数。

Connections 试图连接MySQL服务器的次数。

Created_tmp_tables 当执行语句时,已经被创造了的隐含临时表的数量。

Delayed_insert_threads 正在使用的延迟插入处理器线程的数量。

Delayed_writes 用INSERT DELAYED写入的行数。

Delayed_errors 用INSERT DELAYED写入的发生某些错误(可能重复键值)的行数。

Flush_commands 执行FLUSH命令的次数。

Handler_delete 请求从一张表中删除行的次数。

Handler_read_first 请求读入表中第一行的次数。

Handler_read_key 请求数字基于键读行。

Handler_read_next 请求读入基于一个键的一行的次数。

Handler_read_rnd 请求读入基于一个固定位置的一行的次数。

Handler_update 请求更新表中一行的次数。

Handler_write 请求向表中插入一行的次数。

Key_blocks_used 用于关键字缓存的块的数量。

Key_read_requests 请求从缓存读入一个键值的次数。

Key_reads 从磁盘物理读入一个键值的次数。

Key_write_requests 请求将一个关键字块写入缓存次数。

Key_writes 将一个键值块物理写入磁盘的次数。

Max_used_connections 同时使用的连接的最大数目。

Not_flushed_key_blocks 在键缓存中已经改变但是还没被清空到磁盘上的键块。

Not_flushed_delayed_rows 在INSERT DELAY队列中等待写入的行的数量。

Open_tables 打开表的数量。

Open_files 打开文件的数量。

Open_streams 打开流的数量(主要用于日志记载)

Opened_tables 已经打开的表的数量。

Questions 发往服务器的查询的数量。

Slow_queries 要花超过long_query_time时间的查询数量。

Threads_connected 当前打开的连接的数量。

Threads_running 不在睡眠的线程数量。

Uptime 服务器工作了多长时间,单位秒。 

参考链接:https://blog.csdn.net/qq_38907313/article/details/123574181

posted @ 2023-06-14 16:32  离梦  阅读(733)  评论(0编辑  收藏  举报