由于;练习Mysql的主从复制,保证Mysql的版本一致,所以更新Linux上的Mysql版本
第一步:卸载linux系统上的原来的版本的mysql:
1、使用命令行查询电脑上的版本:
rpm -qa | grep -i mysql
可以看到目前自己linux下的mysql安装版本。
2、卸载当前linux下的mysql版本:
关闭mysql
service mysql stop
卸载mysql:将上面查出来的那三个关于mysql的都删掉,直接不检查依赖删除 rom -e --nodeps
rpm -e --nodeps perl-DBD-MySQL-4.013-3.el6.x86_64
rpm -e --nodeps MySQL-client-5.5.54-1.linux2.6.x86_64
rpm -e --nodeps MySQL-server-5.5.54-1.linux2.6.x86_64
然后再查一遍确保清除干净
rpm -qa | grep -i mysql
3、删除之前安装的mysql文件
首先查找有那些文件
find / -name mysql
然后删除这三个文件
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql/mysql
rm -rf /usr/lib64/mysql
为了保证删除了再查一遍。
4、删除原来的my.cnf(这里可以不删,之后用现在的配置,替换新安装的配置,不过为了下面安装教程我就删了一会自己在配置)
rm -rf /etc/my.cnf
到这里就完成了第一步的工作,彻底删除了原来的mysql
第二步:安装新的mysql
1、首先确定安装的位置及数据保存的位置及配置文件的位置
安装文件下载目录:/data/software
Mysql目录安装位置:/usr/local/mysql
mkdir /data
mkdir /data/software
2、下载自己需要的版本:http://dev.mysql.com/downloads/mysql/
有两种方式:
一种是直接选择下载到window系统,之后利用xshell导入到/data/software;(建议下载地址复制到迅雷下载会快很多)
另一种直接进入到/data/software 之后命令行下载:不过这种方式真的太慢了,建议还是下载地址复制到迅雷下载
#先进入要放置安装包的文件目录再下载 cd /data/software
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
然后在当前目录下解压文件,并将文件移动到 /usr/local/mysql
tar -xzvf mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
mv /data/software/mysql-5.6.43-linux-glibc2.12-x86_64 /usr/local/mysql
新建mysql用户改变所有者
useradd -r -g mysql mysql
chown -R mysql:mysql /usr/local/mysql/
新建配置文件
vim /etc/my.cnf
j将下面的内容拷贝进入my.cnf文件中
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data #先安装再修改
port = 3306
socket=/tmp/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/tmp/mysqld/mysqld.pid
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
log-bin=mysql-bin
binlog-format=ROW
server_id=1
max_connections=1000
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
然后配置创建配置文件中需要的文件
#创建mysqld.pid空文件并授权
mkdir /tmp/mysqld
touch /tmp/mysqld/mysqld.pid
chown -R mysql:mysql /tmp/mysqld/
chmod 777 /tmp/mysqld/mysqld.pid
#创建日志文件
touch /var/log/mysqld.log
chown -R mysql:mysql /var/log
chmod 777 /var/log/mysqld.log
初始化Mysql
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
然后会提示你用指令设置新的密码
但是要先启动mysql。
以前用习惯了 service mysql start ,现在重装居然提示未识别 mysql指令,这是因为mysql.server文件没有复制到 /etc/init.d/下
cp support-files/mysql.server /etc/init.d/mysql
之后添加mysql指令
chkconfig --add mysql
chkconfig --level 12345 mysql on
service mysql start
启动成功
最后设置初始密码:因为初始化后密码还没设定,进入 /usr/local/mysql/bin目录下执行如下指令即可
[root@hadoop100 mysql]# ./bin/mysqladmin -u root password '123456'
然后将 mysql的指令映射到 /usr/bin目录下,因为指令默认启动时这个目录下的
ln -s /usr/local/mysql/bin/mysql /usr/bin
这样我们直接下面命令直接登陆了。
mysql -uroot -p123456
之后进入mysql设置外网连接
grant all privileges on *.* to 'root'@'%'identified by '123456';
flush privileges;
这样就可以外网登陆了
ok了,我可能装的比较麻烦,中间遇到了一些问题所以把解决步骤都放在安装过程里面了,请大家指教