#! /bin/bash
#step 1 关闭防火墙
ufw disable; #ufw disable/enable;//关闭或打开防火墙
ufw allow 3306; #//允许外部访问3306端口
ufw delete allow 80/tcp #禁用3306端口
ufw allow from 192.168.110.128; #//允许此IP访问所有的本机端口
ufw delete allow from 192.168.110.128 #删除上面的规则
ufw status; #//查看防火墙状态
ufw default allow/deny #外来访问默认允许/拒绝
#step 2 查看mysql运行状态
#netstat -ntlp | grep -v tcp6; #查看端口状态
netstat -ntlp | grep -v tcp; #查看端口状态
mysql -V; #查看mysql版本号
find / -name mysqld.cnf; #查找mysqld.cnf 的位置
#step 3 重启mysql
service mysql restart; #重启mysql
#netstat -ntlp | grep -v tcp6; #查看端口状态为0.0.0.0:3306即可
netstat -ntlp | grep -v tcp; #查看端口状态为0.0.0.0:3306即可
#step 4 登录
mysql -uroot -p123456;#登录mysql
use mysql;#进入mysql数据库
select Host,User from user;#查看user表中root是否支持外部访问,localhost 只支持本地; IP地址只支持
#测试远程连接
mysql -u remote_user -p -h mysql_server_IP
#step 5 给此IP地址授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.110.128' IDENTIFIED BY '123456' WITH GRANT OPTION; #给此IP地址授权
FLUSH PRIVILEGES;#刷新该表即可
#step 6 给全部IP地址授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; #给此IP地址授权
FLUSH PRIVILEGES;#刷新该表即可
#step 7 如果端口为127.0.0.1:3306,解决办法
#mysql5.7 版本:
vi /etc/mysql/mysql.conf.d/mysqld.cnf; #将bind-address = 127.0.0.1 修改成 bind-address = 0.0.0.0 或注释掉即可
#验证MySQL是否正在侦听“0.0.0.0”而不是“127.0.0.1”:
netstat -plunt
#mysql5.7以前的版本:
vi /etc/mysql/my.cnf; #将bind-address = 127.0.0.1 修改成 bind-address = 0.0.0.0 ,或注释掉即可
#netstat -an | grep 3306 找到端口号为3306的对应的PID.
export QA_OPA_PLATFORM_PLUGIN_PATH=/opt/Qt5.12/5.12.12/gcc_64/plugins/platforms
export QT_DEBUG_PLUGINS=1
sudo ./BOM &
一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abc.sql
注:/usr/local/mysql/bin/ ---> mysql的data目录
二、导入数据库
1、首先建空数据库
mysql>create database abc;
2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql
建议使用第二种方法导入。