mysql安装配置流程

mysql安装配置流程


apt-get install mysql-server-5.6
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev

检查系统中是否有MySQL服务,出现下面的大概就是成功了
netstat -tap|grep mysql
tcp        0      0 *:mysql                 *:*                     LISTEN      6153/mysqld


#启动mysql
start mysql
#关闭mysql
stop mysql


配置文件my.cnf
/etc/mysql/my.cnf

让服务器可以远程访问,还是配置文件my.cnf,还要下面的配置
#注释bind-address
#bind-address            = 127.0.0.1

参考:http://www.cnblogs.com/liuchangchun/p/4099003.html
http://www.linuxidc.com/Linux/2016-07/133128.htm


本机访问
mysql -u root -p test -h 127.0.0.1


开启远程访问:
方法1.改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称”%”
mysql -u root -pvmware
mysql>use mysql;
mysql>update user set host = ‘%’ where user = ‘root';
mysql>select host, user from user;

方法2.授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;

方法3.如果你想允许用户myuser从ip为192.168.33.60的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO ‘root’@’192.168.33.60′ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO ‘root’@’192.168.33.61′ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;

修改完要重启;

参考:http://www.111cn.net/database/mysql/75868.htm



开启bin-log:
配置文件my.cnf,这些配置打开;
log_bin                 = /var/log/mysql/mysql-bin.log //存放目录
expire_logs_days        = 10 //表明距离当前时间正好n天前的二进制文件会被系统自动删除,0表示不删除。
max_binlog_size         = 100M//一个log的大小。
binlog_format           = MIXED


show binary logs;    #显示binlog文件
purge binary logsto 'mysql-bin.**'  #删除到**文件

查看指定binlog文件的内容:
show binlog events in "mysql-bin.000003";

查看当前正在写入的binlog文件:
show master status

获取指定位置binlog的内容:
show binlog events from 213

flush logs;#关闭当前的二进制日志文件并创建一个新文件,新的二进制日志文件的名字在当前的二进制文件的编号上加1。


提取指定的binlog日志
mysqlbinlog /var/log/mysql/mysql-bin.000003

提取指定position位置的binlog日志
mysqlbinlog --start-position="120" /var/log/mysql/mysql-bin.000003


提取指定数据库binlog并转换字符集到UTF8
mysqlbinlog --database=test --set-charset=utf8 /var/log/mysql/mysql-bin.000003 > /home/test.sql
mysqlbinlog --database=test --set-charset=utf8 /opt/data/APP01bin.000001 /opt/data/APP01bin.000002 >test.sql





进行数据恢复;
mysqlbinlog --no-defaults /var/log/mysql/mysql-bin.000003 --start-position="2973" --stop-position="3828" | /usr/bin/mysql -uroot -p123456 test -h 127.0.0.1

mysqlbinlog --start-position="657" --stop-position="1840" /var/log/mysql/mysql-bin.000003 | mysql -uroot -p123456 test

参考:http://www.2cto.com/database/201412/361968.html



mysqldump常用于MySQL数据库逻辑备份
mysqldump -uroot -pPassword [database name] > [dump file]
mysqldump -uroot -p123 test > test.dump
mysqldump -uroot -p123456 --all-databases --flush-logs > /home/mysql.bak
mysqldump -uroot -p123456 --databases test --flush-logs > /home/mysql.bak
mysqldump -uroot -p123456 --databases test --flush-logs --master-data=2 > /home/mysql.bak
--master-data=2 选项将会在输出SQL中记录下完全备份后新日志文件的名称,


如果要备份某个MySQL主机上的所有数据库可以使用--all-databases选项,如下:
mysqldump --all-databases > test.dump

mysqldump -uroot -p123456 –all-databases > /home/mysql.bak


从备份文件恢复数据库
mysql [database name] < [backup file name]
mysqldump -u用户名 -p密码 -h主机 数据库 < 路径
mysql -uroot -p1234 db1 < c:\a.txt
mysql -uroot -p123456 < /home/mysql.bak //-databases已经包含了建库语名


参考:http://www.cnblogs.com/feichexia/p/MysqlDataBackup.html(定时备份)
参考:http://www.cnblogs.com/qq78292959/p/3637135.html
参考:http://blog.csdn.net/jesseyoung/article/details/41078947
参考:https://segmentfault.com/a/1190000002428533


定时备份
mysqldump -u root -pPASSWORD --all-databases | gzip > /mnt/disk2/database_`date '+%m-%d-%Y'`.sql.gz

一个完整的Shell脚本备份MySQL数据库示例
#vi /backup/backup.sh

#!bin/bash
cd /backup
echo "You are in backup dir"
mv backup* /oldbackup
echo "Old dbs are moved to oldbackup folder"
File = backup-$Now.sql
mysqldump -u user -p password database-name > $File
echo "Your database backup successfully completed"

上面脚本文件保存为backup.sh,并且系统中已经创建两个目录/olcbackup和/backup。每次执行backup.sh时都会先将/backup目录下所有名称为backup开头的文件移到/oldbackup目录。

为上述脚本制定执行计划如下:

#crontab -e
30 1 * * * /backup.sh

参考:http://www.cnblogs.com/feichexia/p/MysqlDataBackup.html(定时备份)
参考:http://blog.csdn.net/gredn/article/details/54582993
参考:http://www.cnblogs.com/lhj588/archive/2012/02/20/2359172.html(linux中Cron定时任务系统命令详解)


猜你喜欢

转载自huangyongxing310.iteye.com/blog/2377770
今日推荐