Linux 安装mysql-5.7.25验证迁移数据目录

目录

Mysql安装

下载安装包

解压安装包

创建数据文件存放目录

创建系统用户组和用户

修改当前目录权限

配置/etc/my.cnf

修改/etc/profile环境变量

初始化数据库

添加开机启动

mysql指令操作

安装后续操作

获取临时密码

跳过用户权限

mysql命令不可用

更改root密码

创建用户并开启远程访问

迁移MYSQL数据目录

修改/etc/my.cnf

转移/usr/local/mysql/data目录

最终迁移后的结果


Mysql安装

下载安装包

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

解压安装包

#解压安装包
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
#删除原始包(可以保留备用)
rm mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
#移动解压目录到/usr/local/mysql
mv mysql-5.7.25-linux-glibc2.12-x86_64 /usr/local/mysql

创建数据文件存放目录

mkdir /usr/local/mysql/data

创建系统用户组和用户

groupadd mysql    ---新建一个msyql组
useradd -g mysql mysql     ---新建msyql用户

修改当前目录权限

chown -R mysql:mysql /usr/local/mysql

配置/etc/my.cnf

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
#不区分大小写
lower_case_table_names = 1
#不开启sql严格模式
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid

修改/etc/profile环境变量

在文件尾部加上如下代码:

export PATH=/usr/local/mysql/bin:$PATH

同步资源:

source /etc/profile

初始化数据库

#进入bin目录
cd /usr/local/mysql/bin
#初始化数据库
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

添加开机启动

修改配置文件
 

cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld
vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

执行启动添加命令
 

chkconfig --add mysqld
chkconfig mysql on

mysql指令操作

#启动
service mysqld start
#重启
service mysqld restart
#停止
service mysqld stop

安装后续操作

获取临时密码

注:临时密码有时候获取不到请使用后面的跳过授权方式。

[root@localhost bin]# grep 'temporary password' /var/log/mysqld.log 
2019-04-01T06:27:32.332025Z 1 [Note] A temporary password is generated for root@localhost: L351tWTtCo<>
2019-04-01T06:38:53.070454Z 1 [Note] A temporary password is generated for root@localhost: .whwt&bf2hyA

跳过用户权限

1.  vi /etc/my.cnf,在[mysqld]中添加

skip-grant-tables

例如:

[mysqld]
skip-grant-tables
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

2.  重启mysql

service mysql restart

3.  使用用户无密码登录

mysql -uroot -p (直接点击回车,密码为空)

4. 选择数据库

use mysql;

5. 修改root密码

update user set authentication_string=password('123456') where user='root';

6 .刷新权限

 flush privileges;

7 .退出

exit;

8 .删除第1部增加的配置信息

skip-grant-tables

9 .重启mysql

service mysql restart

 

mysql命令不可用

source /etc/profile

忘了同步环境变量会导致指令不可用。

更改root密码

mysql> alter user 'root'@'localhost' identified by 'root';
Query OK, 0 rows affected (0.00 sec)

创建用户并开启远程访问

mysql> CREATE USER 'dlwy'@'%' IDENTIFIED BY 'dlwy';
Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on *.* to 'dlwy'@'%' identified by 'dlwy'
    -> ;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

迁移MYSQL数据目录

注意:迁移数据目录网上很多不可借鉴,只需要修改datadir和pid的位置(my.cnf配置目录不在/usr/local/mysql/data的都可以不用修改)。

停止mysql服务:

#停止
service mysqld stop

修改/etc/my.cnf

转移/usr/local/mysql/data目录

找一个分区目录空间充足的路径,这里以/home路径测试:

[root@localhost ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/mapper/cl-root   50G   20G   31G   40% /
devtmpfs             3.8G     0  3.8G    0% /dev
tmpfs                3.8G     0  3.8G    0% /dev/shm
tmpfs                3.8G  8.6M  3.8G    1% /run
tmpfs                3.8G     0  3.8G    0% /sys/fs/cgroup
/dev/sda1           1014M  140M  875M   14% /boot
/dev/mapper/cl-home  873G  166M  873G    1% /home
tmpfs                770M     0  770M    0% /run/user/0
[root@localhost ~]# 

创建转移数据目录:

mkdir /home/mysql-data-transfer-dir
cd /home/mysql-data-transfer-dir
mkdir data

 复制数据:

cp -a /usr/local/mysql/data  /home/mysql-data-transfer-dir

重启mysql服务:

#启动
service mysqld start

最终迁移后的结果

按照你想要的目的,通过最简单的方式达到目标才是最高效的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值