两部分内容,分别是Ubuntu和Mac OS下mysql的安装,其中,本人ubuntu为测试环境使用,需要开启远程连接mysql,mac为本地环境,可本机连接即可。
Ubuntu安装mysqlubuntu版本选择了16.04。
直接执行以下安装命令即可安装成功:
apt install mysql-server apt install mysql-client apt install libmysqlclient-dev
安装完成后,可以使用如下命令检查是否安装成功
sudo netstat -tap | grep mysql
设置远程访问,需要编辑文件
vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到bind-address = 127.0.0.1所在行,将该行注释掉。
# bind-address = 127.0.0.1
进入mysql,输入密码
mysql -uroot -p
执行如下语句
grant all on *.* to root@'%' identified by '密码内容' with grant option; flush privileges;
退出mysql,重启
/etc/init.d/mysql restart
至此,可以远程连接到该mysql。
如果是选择的是阿里云,需要后台开启3306端口,否则也是无法连接上的。
本地电脑使用的系统版本是macOS Catalina 10.15.7。
mysql版本使用的5.7,可以从官网下载。
mac OS下安装就比较简单了,双击按照步骤来即可。
安装完成后,点击系统偏好设置,最下方会出现mysql图标,如图
点击mysql后,进入的页面可以启动或者停止mysql运行,如下图
建议使用Navicat_Premium,其中15版本可以搜索到破解版,可以一试。
需要确保本地已经安装了mysql,此时除了可以备份本机的,也可以备份其他可以访问的mysql。
备份语句为:
mysqldump -h 主机ip -u用户名 -p密码 数据库名 > 保存文件路径和文件名.sql
举例
mysqldump -h 127.0.0.1 -uroot -p123456 dbtest > /usr/local/db/2022.sql
将执行的命令放到java代码中,传入响应参数即可。
import java.io.File;
public class BackupUtil {
public static void dbBackup(String host, String username, String authenticate, String dbName, String destination, String backName){
File backupDir = new File(destination);
if(!backupDir.exists()){
backupDir.mkdirs();
}
try {
File sqlFile = new File(backupDir,backName);
if(!sqlFile.exists()){
sqlFile.createNewFile();
}
StringBuffer buffer = new StringBuffer();
buffer.append("mysqldump");
buffer.append(" -h " + host);
buffer.append(" -u"+username);
buffer.append(" -p"+authenticate);
buffer.append(" "+dbName+" >");
buffer.append(sqlFile);
System.out.println(buffer.toString());
System.out.println("开始备份:"+dbName);
String[] commands = { "/bin/sh", "-c", buffer.toString()};
Runtime.getRuntime().exec(commands);
System.out.println("备份成功!");
}catch (Exception ex){
ex.printStackTrace();
System.out.println("备份异常");
}
}
}



