西湖鱼 发表于 2018-10-2 08:20:37

MySQL-gool

MySQL
查看安装路径
  ps -ef|grep mysql
1,配置linux虚拟机,修改IP
  vim /etc/sysconfig/network-scripts/ifcfg-eth0
2,配置完网卡之后,执行清空命令

3,reboot
查看生产环境


上传文件

  MySQL5.5编译方式安装过程
  参考连接:http://blog.51cto.com/oldboy/1917295


  cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.34 \
  -DMYSQL_DATADIR=/application/mysql-5.6.34/data\
  -DMYSQL_UNIX_ADDR=/application/mysql-5.6.34/tmp/mysql.sock \
  -DDEFAULT_CHARSET=utf8\
  -DDEFAULT_COLLATION=utf8_general_ci\
  -DWITH_EXTRA_CHARSETS=all\
  -DWITH_INNOBASE_STORAGE_ENGINE=1\
  -DWITH_FEDERATED_STORAGE_ENGINE=1\
  -DWITH_BLACKHOLE_STORAGE_ENGINE=1\
  -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1\
  -DWITH_ZLIB=bundled\
  -DWITH_SSL=bundled\
  -DENABLED_LOCAL_INFILE=1\
  -DWITH_EMBEDDED_SERVER=1\
  -DENABLE_DOWNLOADS=1\
  -DWITH_DEBUG=0



Mysql压力测试

MySQL授权

Mysql bin-log日志(二进制)
  Bin-log日志:只保存增删改、create的日志
  可以使用bin-log恢复数据

  设置服务端的字符集



  查看日志乱码http://www.linuxidc.com/Linux/2016-01/126978.htm
  my.cnf里面修改设置:
transaction_isolation = REPEATABLE-READbinlog_format=MIXED备份和数据恢复

1,首先恢复 备份的 sql文件

  2,恢复bin-log






Mysql主从复制











个人写的:
开始搭建主从复制
  服务器二台:
  分别安装二台Mysql数据库
  1:安装命令
  yum –y install mysql-server
  service mysqld start
  2:配置登陆用户的密码
  /usr/bin/mysqladmin -u root password 'new-password'
  配置用户的密码:new-password,修改这个就可以
  Show databases
  Use MySQL
  Show tables
  Select host,user,password from user;
  删除其他不安全的用户信息
  delete from user where password='';

  Windows服务Linux中的MySQL,需要执行
  update user set host='192.168.119.1';
  刷新flush privileges;
  mysql –u root –p –h 192.168.119.1
  只有本机Windows可以连接
  3:配置允许第三方机器访问本机Mysql

  两台MySQL服务器互相连接一下,看看两台服务器是否可以联通!!!
  连不通,执行/etc/rc.d/init.d/iptables stop

  主数据库服务器:192.168.1.112,MySQL已经安装,并且无应用数据。
  从数据库服务器:192.168.1.115,MySQL已经安装,并且无应用数据。
上面操作步骤作废
grant replication slave on *.* to 'gool'@'192.168.10.25'>Mysql配置
  1)   vim /etc/my.cnf

  master和slaver 的 server-id的值不能一样
  1)   service mysqld restart
  分别重新启动master,slaver的二台mysql服务
  2)   登陆
  3)   输入   SHOW VARIABLES LIKE 'server_id';
  4)   来查看server_id是否和你配置的一样。
  5)   master输入
  6)   Mysql> show master status;
  +------------------+----------+--------------+------------------+
  | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
  +------------------+----------+--------------+------------------+
  | mysql-bin.000001 | 106 | | |
  +------------------+----------+--------------+------------------+
  7)   记录下 FILE 及 Position 的值,在后面进行从服务器操作的时候需要用到。
  8)   配置从服务器
  change master to
  master_host='192.168.10.24',
  master_user='gool',
  master_password='gool',
  master_log_file='mysql-bin.000001',
  master_log_pos=154;
  9)   正确执行后启动Slave同步进程
  10)启动slave
  mysql> start slave;
  11)查看slave状态
  mysql> show slave status\G
  12)其中Slave_IO_Running 与 Slave_SQL_Running 的值都必须为YES,才表明状态正常。
测试主从复制
  1:先确定主,从库上没有任何自定义表
  2:主服务器上的操作
  在主服务器上创建数据库itcast_db
  mysql> create database gool_db;
  在主服务器上创建表itcast_tb
  mysql> create tables gool_tb(id int(3),name char(9));
  在主服务器上的表itcast_tb中插入记录
  mysql> insert into gool_tb values(01,'gool1');
  3:从服务器上查看是否已经同步?
总结:搭建过程中可能引起失败的原因
  1:server_id 配置的一样或是配置的没有更新到Mysql数据中来
  2:防火墙拦截了3306端口
  3:用户与密码不正确
  4:Mysql不允许其它机器访问
MySQL分区




  List分区,有“”固定的值不改变“”,适合使用list分区技术












  通过desc,查看 查询影响的rows行数






  如果不是myisam存储引擎,而是innodb存储引擎,需要进行修改下面内容
  Vim /etc/my.conf




MySQL备份
  1
  mysqldump   -u userName -pdabaseName> fileName.sql
  fileName.sql最好加上路径名
  导出数据库中的某个表的数据
  ?
  1
  mysqldump   -u userName -pdabaseName tableName > fileName.sql
  导出整个数据库中的所有的表结构
  在linux命令行下输入:
  ?
  1
  mysqldump   -u userName -p -d dabaseName> fileName.sql
  注意:是加了-d
  导出整个数据库中某个表的表结构
  在linux命令行下输入:
  ?
  1
  mysqldump   -u userName -p -d dabaseName tableName > fileName.sql
  注意:是加了-d
  导入mysql方法1
  进入linux命令命令行下:
  ?
  1
  2
  3
  mysql   -uroot -p 回车输入密码
  source   fileName.sql
  注意fileName.sql要有路径名,例如:source /home/user/data/fileName.sql
  导入mysql方法2
  进入linux命令命令行下:
  ?
  1
  2
  mysql   -uroot -p database < fileName.sql
  注意fileName.sql要有路径名
  
  
  
  
Linux下参数的传递


  route del $SNS_VIP >/dev/null 2>&1                  #route del 删除本地路由
  >/dev/null 2>&1    一些消息不想看到的时候,使用>/dev/null 2>&1重定向到/dev/null这个文件夹下
Shell脚本调用vim编辑器
  若想在shell脚本中调用vi编辑器,输入的内容由here document来提供,示例如下:
  1
  2
  3
  4
  5
  6
  7
  #!   /bin/bash
  vi abc.txt
页: [1]
查看完整版本: MySQL-gool