mysql压缩包:d986
首先安装 cmake
yum –y install cmake //也需要安装gcc-c++,openssl openssl-devel。前面已经安装。
cd /usr/local/src/
mkdir mysql
cd mysql /
rz 上传安装包
tar -xvf Percona-Server-5.6.24-72.2-r8d0f85b-el6-x86_64-bundle.tar
rpm -ivh Percona-Server-56-debuginfo-5.6.24-rel72.2.el6.x86_64.rpm
rpm -ivh Percona-Server-shared-56-5.6.24-rel72.2.el6.x86_64.rpm
rpm -ivh Percona-Server-client-56-5.6.24-rel72.2.el6.x86_64.rpm
rpm -ivh Percona-Server-server-56-5.6.24-rel72.2.el6.x86_64.rpm
安装顺序:rpm包很多,只需安装debuginfo 、shared、client、server
1.mysql无法启动ERROR!
解决办法:kill掉如下进程后
service mysql start 或者 /etc/init.d/mysql start发现成功
2.默认没有密码不安全:
mysqladmin -u root password "root"
Warning警告提示,忽略即可。
3.打开3306端口
/sbin/iptables -I INPUT -p tcp --dport 3306 -jACCEPT
/etc/rc.d/init.d/iptables save #修改生效
/etc/init.d/iptables status #查看配置
4.开启远程访问权限
语法:
grant [权限] on [数据库名].[表名] to ['用户名']@['web服务器的ip地址']identified by ['密码'];
grant all on *.* to 'root'@'%' identified by'root';
或者指定IP地址
grant all on *.* to 'root'@'192.168.1.103'identified by 'root';
5.至此mysql安装完成
6.备份数据库
orcal才有真正的dump,MySQL会备份为一个.SQL文件
如果数据库中有大字段,二进制,使用该方法备份数据库是无效的。
7.将数据库备份文件导入到Linux下的MySQL中
1)利用数据库client,sql工具,不要直接把文件拖放过去执行,要把文件打开,拷贝所有的内容,这样可以防止乱码
此处使用的是sqlyog,由于备份文件中的内容较多,执行时间比较长,而orcal的客户端执行同样量级的批量操作会比sqlyog快很多,因为orcal的客户端是使用c写的,而sqlyog使用的是更高级的语言。
2)直接在linux导入文件,注意中文环境乱码
mysql>use jtdb; #先创建对应的数据库
mysql>set names utf8; #防止乱码
mysql>source jtdb.sql;
8.如果是虚拟机中安装的mysql,克隆虚拟机后启动两台虚拟机中的mysql
因为是复制的不是安装的,出现一个问题PID值UUID唯一标示,
9.主从复制
(1)编辑主master服务器配置文件/etc/my.cnf
在[mysqld]节点下加入两句话
server-id=1
log-bin=mysql-bin #启用二进制日志;
修改完成后重启mysql
(2)编辑从mysql
/etc/my.cnf
修改完成后重启mysql
(3)查看主的日志文件和标志位置
(4)锁定数据库不能让数据库再写入数据
(5)从上通过mysql命令配置同步日志的指向
(6)查看
start slave; #stop slave;停止服务,出错时先停止,再重新配置
show slave status\G; #查看SLAVE状态,\G结果纵向显示。必须大写
service mysql restart #重启服务
(7)读写分离
原因:
主从复制单向的,主的数据发生变化,从的数据跟着发生变化。但是从的数据如果发生变化,主是不会修改的。
规定:从的数据库是不允许修改。
如果从的数据被变化了,造成隐患,数据库不会抛出异常。数据就不一致。
实现:amoeba
mysql资源下载,密码:alrj
安装mysql
[1]rpm -qa|grep -i mysql 查看是否装有mysql(rpm -qa查看linux装有什么软件)
[2]rpm -ev --nodeps 名字 卸载原先的mysql软件(--nodeps不考虑依赖强制卸载)
[3]groupadd mysql 增加用户组,要用到
[4]useradd -r -g mysql mysql 往用户组中添加用户
[5]rpm –ivh 名字 安装rpm包,客户端、服务端的mysql两个
rpm -ivhMySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm
rpm -ivhMySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm
[6]my.cnf linux下的mysql核心配置文件改字符集(my.ini mysql核心配置文件 端口、字符集)
vim /usr/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character_set_server=utf8
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[7]cp /usr/share/mysql//mysql.server /etc/init.d/mysqld 将mysqld加入系统服务
[8]service mysqld start开启
[9]mysql –u root –p 输入密码root后发现登录不进去,是因为他自己生成密码
[10]vim /root/.mysql_secret 找随机密码,登录mysql成功
[11]mysqladmin –u root –p password root(新密码) 修改新密码
方法一:
在mysql系统外,使用mysqladmin
# mysqladmin -u root -p password root
Enter password: 【输入原来的密码】
[12]\s 可看系统信息
[1]rpm -qa|grep -i mysql 查看是否装有mysql(rpm -qa查看linux装有什么软件)
[2]rpm -ev --nodeps 名字 卸载原先的mysql软件(--nodeps不考虑依赖强制卸载)
[3]find / -name mysql
查找结果如下
删除对应的mysql目录
注意:卸载后/etc/my.cnf不会删除,需要进行手工删除
[4]检验是否删除干净
卸载干净了安装输入如下
未卸载干净,安装server时输入只有两行