服务器上有mysql5.5.38,要求升级为mysql5.6mysql
为了下降影响范围,可持续做业,决定在现有基础上部署mysql5.6,即部署多版本mysqllinux
1.与现有mysql安装目录不能相同
2.与现有mysql数据库文件目录不能相同
3.与现有msql的启动端口不能相同(默认3306)
4.与现有mysql的服务的socket不能相同,即my.cnf里面的socket的设置不能同样
5.与现有mysql的服务的pid文件不能相同,即my.cnf里面的pid-filed设置不能同样sql
建立用户组和用户数据库
groupadd mysql
useradd -g mysql mysql
建立目录服务器
mkdir /home/mysql/base
mkdit /home/mysql/data
chrom -R mysql:mysql base
chrom -R mysql:mysql data
下载地址:https://dev.mysql.com/downloa...
选项Select Operating System:linux-genericsocket
wget https://dev.mysql.com/get/Dow...
tar -zxvf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz
cp -r mysql-5.6.37-linux-glibc2.12-x86_64 /home/mysql/base //复制解压后的包
cd /home/mysql/base
mv mysql-5.6.37-linux-glibc2.12-x86_64 mysql-5.6.37 //重命名文件夹
cd /home/mysql/base/mysql-5.6.37/scripts
mysql_install_db --basedir=/home/mysql/base/mysql-5.6.37 --datadir=/home/mysql/data/5.6.37/st01 --user=mysql
安装后可查看数据库目录有以下文件,建立另外一个端口的mysql服务可直接复制这个文件夹ide
cd /home/mysql/data/5.6.37/st01
ll -ah
total 110600
-rw-rw----. 1 mysql mysql 12582912 Sep 21 23:19 ibdata1
-rw-rw----. 1 mysql mysql 50331648 Sep 21 23:19 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Sep 21 23:19 ib_logfile1
drwx------. 2 mysql mysql 4096 Sep 21 23:19 mysql
drwx------. 2 mysql mysql 4096 Sep 21 23:19 performance_schema
drwx------. 2 mysql mysql 6 Sep 21 23:19 test
复制一份配置文件orm
cd /home/mysql/data/mysql-5.6.37/st01
cp /home/mysql/base/5.6.16/support-files/my-default.cnf ./my.cnf
修改配置文件接口
vi ./my.cnf
port = 9701
socket = /home/mysql/data/5.6.37/st01/mysql.sock
basedir = /home/mysql/base/5.6.37
datadir = /home/mysql/data/5.6.37/st01
......
[mysqld_safe]
log-error = /home/mysql/data/5.6.37/st01/mysqld.log
pid-file = /home/mysql/data/5.6.37/st01/mysql.pid
1.启动服务进程
/home/mysql/base/5.6.37/bin/mysqld_safe --defaults-file=./my.cnf --user=mysql&
2.查看服务
ps查看mysql进程
ps -ef | grep mysql
也能够查看log信息看启动状况
cat /home/mysql/data/5.6.37/st01/mysqld.log
3.关闭服务
/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p shutdown
暴力关闭(有数据丢失风险)
ps -ef | grep 端口号 //命令结果第二列为进程号
kill -9 进程号 //强制杀掉进程
6.1 本地访问
安装好后,mysql默认只有root用户(此用户是mysql用户,而非Linux用户),而且没有密码
1.给默认的root用户设置密码(设置后只容许localhost本地访问)
/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root password 'password123'
2.给默认的root用户修改密码
/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p password 'password1234'
6.2 远程访问
1.进入mysql
/home/mysql/base/5.6.37/bin/mysql -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p
按提示输入密码
2.1 方法一:grant 赋予用户root全部权限
grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘链接口令’;
mysql>grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
2.2 方法二:root对应的host成%,表示能够任意IP地址登陆
mysql>update user set host = '%' where user = 'root';
3.刷新配置后退出
mysql>flush privileges; mysql>exit;