数据库(二)tab补全功能,使数据库支持简体中文,日志管理,备份脚本

一、如何在MySQL数据库中使用tab键补全功能

1.修改主配置文件/etc/my.cnf

  vim /etc/my.cnf

   [mysql]

    #no-auto-rehash

    auto-rehash

2.重启MySQL服务,登录测试

  /etc/init.d/mysqld restart

  mysql -uroot -p (可在数据库中使用tab键)

3.;临时支持tab键

  mysql -uroot -p --auto-rehash

二、是MySQL数据库支持简题中文

1.临时支持简体中文

  在数据库中编辑 charset utf8;

2.永久支持简题中文(yum方式安装的MySQL服务)

  vim /etc/my.cnf

   [client]

    default-character-set=utf8

   [mysql]

    default-character-set=utf8

  /etc/init.d/mysqld restart

三、MySQL日志管理

1.错误日志

  包含了当MySQL启动和停止时,以及服务器在运行过程中发生的任何错误时的相关信息,默认在安装目录/usr/local/mysql/data/下的“主机名。err”。

  可在登陆时使用“--log-error=文件路径及文件名”的方式来指定MySQL保存错误日志的位置;或者修改住配置文件/etc/my.cnf,在【mysql】下方添加“log-error=文件路径及文件名”,重启mysql服务。

  vim /etc/my.cnf

   [mysqld]

    log-error=mysql_error.log

  /etc/init.d/mysqld restart

  cat /usr/local/mysql/data/mysql_error.log

2.通用查询日志

  MySQL所有连接和语句都将会被记录。默认关闭此项日志记录,一般作调试用,平时开启会记录大量数据占用磁盘空间。

  可在登录时使用“--log=文件路径及文件名”或“-l 文件路径及文件名”选项指定;或修改主配置文件/etc/my.cnf,在【mysqld】下添加“log=ON”和“log=文件路径及文件名”,重启mysqld服务。

  vim /etc/my.cnf

   [mysqld]

    log=ON

    log=/usr/local/mysql/data/mysql_general.log (绝对路径可以省略,保证mysql对该目录具有写入权限!

  tail -f /usr/local/mysql/data/mysql_general.log

  mysql -uroot -p

    show databases;

    use auth;

    show tables; (发现日志记录了所有执行过的命令)

3.二进制日志

  包含了所有更新了的数据或者已经潜在更新了数据的所有语句,记录了数据的更改。主要目的是在恢复时能够最大可能的恢复数据库。默认是开启的,默认路径在/usr/local/mysql/data/下的,以“mysql-bin”开头的二进制日志。

  可在登录时使用“--log-bin=文件路径及文件名前缀”选项指定;或修改主配置文件/etc/my.cnf中【mysqld】下的“log-bin=文件路径及文件名”修改存放路径。

  可用mysqlbinlog命令查看二进制日志文件。

  vim /etc/my.cnf

   [mysqld]

    log-bin=mysql-bin

  cd /usr/local/mysql/data/

  mysqlbinlog --no-defaults  mysql-bin.000001

4.慢速查询日志

  vim /etc/my.cnf

   [mysqld]

    long_query_time=5

    log-slow-queries=mysql_slow.log

  /etc/init.d/mysqld restart

  ll /usr/local/mysql/data/mysql_slow.log

四、数据乱码的解决方法

1.MySQL数据乱码的可能原因

 1)服务器系统字符设置问题

 2)数据表与设置问题

 3)客户端连接语系的问题

2.解决方法

 1)在创建数据库时设定

  格式:create database 库名 character set 'utf8' collate 'utf8_general_ci';

 2)在创建表示设定字符集

  格式:create table 表名 (字段 格式) default charset=utf8;

 3)使用set names 设置默认字符集

  格式:set names utf8;charset utf8;

 4)永久修改,修改主配置文件在【mysql】字段中加入:detault_character_set=utf8;

  注意是mysql,不是mysqld,否则启动时报错!!!

  修改配置文件记得重启!

五、MySQL数据库备份脚本

实验要求:对mysql-server的auth库和client库,实现异地备份,每天凌晨2:00进行备份,撰写一个数据恢复脚本。

  MySQL服务端授权,给予select和locktables权限,以备份

  客户端安装客户端软件

 

·  连接测试

 

  撰写客户端备份脚本

 

  改变系统时间,执行任务计划,模拟每天的备份,为之后的恢复脚本做准备

 

  撰写数据恢复脚本

 vim /opt/restore_mysql.sh

chmod +x /opt/restore_mysql.sh

  如在客户端恢复数据,需要开放权限

 

  恢复测试:

原文地址:https://www.cnblogs.com/mashuang/p/10019952.html