Linux-Ubuntu下MYSQL数据库的安装和后续参数配置

4 篇文章 0 订阅

1.MYSQL的Linux安装

sudo apt-get install mysql-server          //服务端

sudo apt-get install mysql-client          //客户端

sudo apt-get install libmysqlclient-dev    //程序编译时链接的库

中间会提示设置root账号密码,若没有提示,则看下文登录

image

安装完成后,利用如下命令查看状态

dpkg -l | grep mysql

image

启动

service mysql start

登录

mysql -u root -p

2.MYSQL的root密码设置

(1)若没有设置root密码则:

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

在这个配置文件最后添加一个skip-grant-tables

image

重新登录sudo

mysql;或者mysql -uroot -p

(2)登录成功进行修改root密码:

use mysql;

MySQL5.7版本后:

update user set authentication_string=password("您要修改的密码") where user="root";

刷新权限:

flush privileges;

重启MYSQL服务

systemctl restart mysql.service

3.配置远程连接

mysql -u root -p
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '远程登录密码' WITH GRANT OPTION;

Exit退出后,对系统文件再进行修改

路径:/etc/mysql/mysql.conf.d/mysql.cnf

或:

vi /etc/mysql/mysql.conf.d/mysqld.cnf

把cnf文件中的bind-address进行注释

image

4.增加MYSQL的最大连接数

mysql -u root -p

use mysql;

查看当前mysql支持的最大连接数(默认为151):

show variables like 'max_connections';

查看目前的连接数:

show status like '%thread%';

(1)开始进行最大连接数修改:

vi /etc/mysql/my.cnf

在此文件最后新增:

 [mysqld]

max_connections = 9999       --mysl最大连接数

table_open_cache = 1024     --同时打开表的数量(选填)

open_files_limit = 65535    --允许打开的文件数(选填)

mp_table_size = 128M       --临时表128M时转移到磁盘上(选填)

image

(2)更改mysql.service

打开mysql.service:

cd /lib/systemd/system

vi mysql.service

在文件结尾中新增:

LimitNOFILE=infinity
LimitMEMLOCK=infinity

image

新增后重启MYSQL服务,再进行最大链接数量查看

systemctl daemon-reload

systemctl restart mysql.service

5.增加主机的进程数,防止1135错误

Ubuntu系统上对于systemd的资源控制,其中默认参数为 #DefaultTasksMax=512,限制MySQL打开进程数最大512 ,因此需要修改增加:

service mysql status 

可以查看当前的Task和限制的数量,默认是限制512

vi /etc/systemd/system.conf

在这里插入图片描述

修改DefaultTasksMax的值为65535,后面的值可根据需要修改,修改后:执行:

systemctl daemon-reload

重新执行:

service mysql status 

发现支持的进程数量已经提升
在这里插入图片描述

对于Centos系统会限制的地方在/etc/security/limits.d/下面.

6.增加主机的Threads_cached

#分别在mysql中执行
show global status like '%threads%';
show variables like '%conne%';

在这里插入图片描述
在这里插入图片描述
MYSQL线程缓存未命中率=Threads_created /Connections
这个数值越小越好,因此可以通过设置 thread_cache_size的大小来监测该数值大小
查看 thread_cache_size的设置值

show global variables like 'thread_cache_size';

在这里插入图片描述

6.1 临时设置,重启MYSQL后失效

set global thread_cache_size = 1000; 

6.2 永久设置

修改MySQL 配置文件/etc/mysql/ my.cnf

[mysqld]
thread_cache_size = 1000

在这里插入图片描述
修改后重启MYSQL即可。

7. 推荐设置定时脚本

#!/bin/bash
echo "Connect mysql..."
mysql -h 127.0.0.1 -P 3306 -u root -p<您的密码> <<EOF
use mysql;
flush hosts;
#use sitesMonitor;
set global max_connect_errors = 9000;
set global wait_timeout=100;
set global  interactive_timeout=100;
set global thread_cache_size=1000;
show global variables like '%max_connect_errors%';
show variables like 'thread_cache_size';
show status like 'thread%';
#show tables;
exit
EOF
echo "Connect succes!"

对于某些机器无设置权限,可以配置定时任务,执行该脚本手动设置。

8.参考文档

https://blog.csdn.net/qq_42956179/article/details/107285977
https://blog.csdn.net/liangkaiping0525/article/details/88868365
https://blog.csdn.net/weixin_39922154/article/details/90666155
https://blog.csdn.net/qq_43627907/article/details/124781497
https://blog.csdn.net/weixin_45662754/article/details/126558102
https://blog.csdn.net/gettogetto/article/details/54565366
https://blog.51cto.com/u_15060546/2650694
https://www.jianshu.com/p/47adb747652d
https://blog.csdn.net/xiaohai798/article/details/114025104

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驯龙高手_追风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值