转:https://blog.csdn.net/zhaohuakai/article/details/82933961
1. mysql安装
命令安装(实际版本号根据自己需要来):
sudo apt-get install mysql-server-5.7
2. 修改密码
mysql安装完成后,需要设置初始密码。方法:
sudo cat /etc/mydql/debian.cnf #记录下其中的user和password字段内容
结果如下(示例。如果没有,还可以去/var/log/mysql.log或者/var/log/mysql/error.log,找是否有临时的用户名和密码):
然后修改密码:
-
mysql -u用户名 -p密码 # 使用上一步找到的用户名和密码
-
use mysql # 切换到mysql库
-
update user set authentication_string=password('新的密码') where user = 'root'; # 修改root的密码
-
flush privileges; # 使设置生效
-
quit # 退出mysql
-
# 接下来使用新的密码登录mysql就行了
注意,上述方法若是不成功,还可以这样做。在/etc/mysql/mysql.conf.d/mysqld.cnf,在[mysqld]属性下面,加上跳过认证的选项,skip-grant-tables,如下:
然后重新启动mysql服务:
-
sudo service mysql stop # 关闭mysql服务
-
sudo service mysql start # 启动mysql服务
此时可以直接进入mysql
mysql -uroot # 加上skip-grant-table后,此时不用输入密码了
进入后修改密码就可以,
-
use mysql # 切换到mysql库
-
update user set authentication_string=password('新的密码') where user = 'root'; # 修改root的密码
-
flush privileges; # 使设置生效
-
quit # 退出mysql
最后需要把/etc/mysql/mysql.conf.d/mysqld.cnf中的skip-grant-tables注释掉(使用#号)或者直接删掉。
再次重启mysql服务,使新的设置生效。
使用新的用户名和密码登录即可。
3. 数据文件迁移
mysql数据库文件默认在/var/lib/mysql目录下,配置文件在/etc/mysql/mysql.conf.d/mysqld.cnf,使用命令查看配置文件:
cat /etc/mysql/mysql.conf.d/mysqld.cnf
结果如下:
注意配置文件的datadir变量,与实际数据库文件的位置是一致的。
接下来,关闭mysql服务:
sudo service mysql stop
将原先数据库目录,拷贝到新的数据库目录下,保持文件权限的一致性:
sudo cp -ra /var/lib/mysql /data #/data改成实际路径
将/etc/mysql/mysql.conf.d/mysqld.cnf中的datadir改为修改后的目录。
重新启动mysql服务。
sudo service mysql start
--------------------- 本文来自 zhaohuakai 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/zhaohuakai/article/details/82933961?utm_source=copy