MySQL数据库 原

1.数据库my.cnf 配置

[root@localhost /]# cat /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql init-connect='SET NAMES utf8mb4' character-set-server=utf8mb4 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 #设置2进制日志文件目录 log-bin=mysql-bin #指定索引的缓冲区大小,4G内存下设置256或者384合适 key_buffer_size = 16G #每打开一个表,都会读入数据到table_open_cache中 table_open_cache = 2048 #用于ORDER BY时的缓冲大小,是针对的每个连接,所以不能太大 sort_buffer_size = 8M #用于表间关联缓存的大小 join_buffer_size = 1M #对表进行顺序扫描的请求 read_buffer_size = 4M # tmp_table_size 的默认大小是 32M。如果一张临时表超出该大小,MySQL产生一个 The table tbl_name is full 形式的错误,如果你做很多高级 GROUP BY 查询,增加 tmp_table_size 值。 tmp_table_size = 246M max_heap_table_size = 246M #索引缓存大小: 它决定了数据库索引处理的速度,尤其是索引读的速度 key_buffer_size = 512M #任意顺序读取行时 read_rnd_buffer_size = 16M #查询到内容向网络传输时 net_buffer_length = 8K #保存在缓存中的线程数量, thread_cache_size = 300 ##由于项目中一些表的增删改相对比较频繁,但是查询也占据了很大的一部分,还需要项目运行后观察一段时间 query_cache_size= 1024M #指定单个查询能够使用的缓冲区大小,缺省为1M query_cache_limit = 2M # 和cpu的核心数有2倍的关系,我使用的是云服务器,设置这个参数后就启动不起来了 #thread_concurrency = 12 #提交事务后数据写入磁盘的时间点,设置为2可以对没有强烈的安全要求机制下,对速度提高很大 innodb_flush_log_at_trx_commit = 2 #批量插入数据缓存大小,可以有效提高插入效率,默认为8M bulk_insert_buffer_size = 64M # MyISAM表发生变化时重新排序所需的缓冲 myisam_sort_buffer_size = 128M # MySQL重建索引时所允许的最大临时文件的大小 (当 REPAIR, ALTER TABLE 或者 LOAD DATA INFILE). # 如果文件大小比此值更大,索引会通过键值缓冲创建(更慢) myisam_max_sort_file_size = 10G # 如果一个表拥有超过一个索引, MyISAM 可以通过并行排序使用超过一个线程去修复他们. # 这对于拥有多个CPU以及大量内存情况的用户,是一个很好的选择. myisam_repair_threads = 1 #自动检查和修复没有适当关闭的 MyISAM 表 myisam_recover interactive_timeout = 120 wait_timeout = 120 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid

2.启动方式

2.1.Linux

/etc/init.d/mysql restart

2.2.Mac

sudo /usr/local/mysql/support-files/mysql.server start
sudo /usr/local/mysql/support-files/mysql.server stop
sudo /usr/local/mysql/support-files/mysql.server restart

2.3.Windows

启动服务

3.定时任务

3.1.定时备份数据库

mysqldump -uroot -p"***" --events --ignore-table=mysql.events --all-databases -h 127.0.0.1 | gzip > /yourpath/mysql.bak.`date +%Y%m%d%H%M%S`.sql.gz

3.2.定时SQL任务

mysql -uroot -p"***" </yourpath/crontab_mysql.sql >/yourpath/crontab_mysql.`date +%Y%m%d%H%M%S`.log

其中“/yourpath/crontab_mysql.sql”为需要执行的sql语句。

4.常见问题

4.1.Access denied for user 'root'@'localhost' (using password: YES)

# mysqladmin -uroot -p password 'newpassword'
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>

注意,5.7版本数据库密码为“authentication_string”字段。

4.2.The user specified as a definer ('root'@'%') does not exist

权限问题,授权 给 root  所有sql 权限

mysql> grant all privileges on *.* to root@"%" identified by ".";
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java成神之路

Linux_服务器_03_xxx is not in the sudoers file.This incident will be reported.的解决方法

1.切换到root用户下,怎么切换就不用说了吧,不会的自己百度去. 2.添加sudo文件的写权限,命令是: chmod u+w /etc/sudoers 3...

11330
来自专栏程序你好

MySQL数据优化总结-查询备忘录

14020
来自专栏Java架构沉思录

听说你还不会看MySQL慢查询日志?

MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。

10610
来自专栏我的博客

PHP读取excel插入mysql数据库

php读取excel在网上找了n多办法,没有合适的。但是也有一定的收获,就是尽量实用类,不用odbc或者csv格式读取——因为它可以跨平台。各自的优缺点在这里都...

36240
来自专栏架构之路

mysql 通过慢查询日志查写得慢的sql语句

MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow-queries[=file_name]选项启动时,mysqld 会写一个包含...

40840
来自专栏Snova云数仓

Greenplum中对表批量授权

  DBA在管理数据仓库的时候,往往会创建多个帐号,每个帐号有不同的用途。因此这里就有不同帐号间表授权的需求。

54460
来自专栏维C果糖

史上最简单的 MySQL 教程(二十二)「数据的高级操作 之 更新 & 删除」

此外,在删除记录的过程中,如果表中存在自增长的主键,那么删除之后,自增长不会还原。执行如下 SQL 语句,进行测试:

35880
来自专栏JetpropelledSnake

SQL学习笔记之MySQL查询的三层解析

15030
来自专栏GreenLeaves

Oracle 锁机制

本文参考自:ORACLE锁机制 1、oracle是一个多用户使用的共享资源,当多个用户并发的操作同一数据行时,那么在oracle数据库中就会存在多个事务操作统一...

23990
来自专栏乐沙弥的世界

MongoDB 索引创建

七、更多参考 MongoDB 单键(列)索引 MongoDB 复合索引 MongoDB 多键索引 MongoDB 执行计划获取(db.colle...

35200

扫码关注云+社区

领取腾讯云代金券