首页 > 学院 > 操作系统 > 正文

MySql配置、介绍

2024-06-28 16:04:07
字体:
来源:转载
供稿:网友

MySQL配置文件

mysql配置文件位置:vim /etc/my.cnf 详细配置文件的模块(可作为模板直接复制)

# The MySQL server[mysqld]port = 3306socket = /tmp/mysql.sockskip-lockingkey_buffer_size = 256Mmax_allowed_packet = 1Mtable_open_cache = 256sort_buffer_size = 1Mread_buffer_size = 1Mread_rnd_buffer_size = 4Mmyisam_sort_buffer_size = 64Mthread_cache_size = 8query_cache_size= 16M# Try number of CPU's*2 for thread_concurrencythread_concurrency = 8

配置文件说明表:

项目 说明
port 监听的端口;
socket 监听的socket位置;
skip-locking 过滤lock,有些情况会有锁,为了考虑速度可以过滤掉锁;
key_buffer_size 索引块的缓冲区,和内存有关系,增加大小可以增加索引速度;
max_allowed_packet 允许最大包,和mysql的web管理工具 导入数据包有关;
table_open_cache 所有的线程打开表的数量;
sort_buffer_size 排序的 缓冲区大小;
read_buffer_size 读取Mysql数据的缓冲区;
read_rnd_buffer_size 随机读数据的缓冲区;
myisam_sort_buffer_size myisam搜索引擎的排序缓存区大小 ,mysql 有两个搜索引擎 还有一个是 innodb;
thread_cache_size 线程缓存, 和CPU核数有关系,按照CPU 核数大小设置;
query_cache_size 查询的缓存大小,查询结果缓存在内存中 下次查询可以可以直接缓存中调用;
thread_concurrency 和CPU核数有关,最大并发线程数,正常值是CPU核数X2;

【相关扩展配置参数】

客户端保持在线的时间:

mysql客户端 无数据访问的时候,会有一段时间保持在线;但mysql允许同时连接的客户端数量是有限的;过多无数据访问客户端在线会占用资源,影响mysql性能;这里可以手动设置无数据访问客户端保持在线的时长,以发挥mysql的最大传输性能;单位为秒 主配置文件中增加以下参数:(这里wait timeout需要与interactive_timeou配合使用;) interactive_timeout=8 wait timeout=8 这里设置的是保持客户端在线时长8秒;

log-bin 配置二进制日志 和server-id 可以自行查询资料了解。

慢查询访问日志配置

long_query_time 设置多长时间记录一次慢查询日志,单位为秒;log_solw_queries 定义慢查询日志位置;

long_query_time = 1log_solw_queries = /data/mysql/slow.log

MySql的root密码重置

重置密码

使用root账户登录mysql【默认是没有密码的】

[root@CentOS-1 ~]# mysql -urootWelcome to the MySQL monitor. Commands end with ; or /g.Your MySQL connection id is 11Server version: 5.1.73-log MySQL Community Server (GPL)Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.mysql>

创建root密码:

创建密码:mysqladmin -uroot passWord 'chen1992'

使用root账户登录mysql【-p后面跟密码】:mysql -pchen1992

修改root的密码:mysqladmin -uroot -pchen1992 password '1234qwer'

重置root密码:(正常在忘记密码的情况下使用)

编辑mysql配置文件:vim /etc/my.cnf

在配置文件中添加(不去授权)skip-grant

重启mysql:/etc/init.d/mysqld restart

[root@CentOS-1 ~]# vim /etc/my.cnf[mysqld]···# Try number of CPU's*2 for thread_concurrencythread_concurrency = 8skip-grant···[root@CentOS-1 ~]# /etc/init.d/mysql restart

更新密码:

mysql> use mysqlDatabase changedmysql> update user set password=password("1qaz2wsx") where user='root';mysql> select * from user where user='root'/G; 查看相关信息,可以查看加过密的密码等

密码更新后将vim /etc/my.cnf配置文件中的 skip-grant删除,重启mysql 即可

mysql登陆

本地登录mysql:mysql -uroot -p1234qwer

远程登录mysql:mysql -uroot -h192.168.0.106 -P3306 -p1234qwer-u账户 -h地址 -P端口 -p密码】

mysql中对指定ip授权:grant all on *.* to 'root'@'192.168.0.105' identified by '1234qwer';【这里的IP正常指的是客户端IP】

查看是否授权成功的方法:

use mysql select * from user where host='192.168.0.106'/G;

mysql> select * from user where host='192.168.0.106'/G;*************************** 1. row *************************** Host: 192.168.0.106 //授权成功 User: root Password: *0CB5F227B3E98395CA0C6F1427427E77ADF49F89 Select_PRiv: Y Insert_priv: Y Update_priv: Y ···

查看当前mysql用户:select user();

多个mysql 本地登录方法:mysql -uroot -S /tmp/mysql.sock -p1234qwer


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表