MySQL部署后配置
授权root用户登录
#仅本地登录,修改密码用
alter user root@'localhost' identified with mysql_native_password by'*******@666';
创建admin用户设置密码,并使得所有位置都可以访问数据库
create user 'admin'@'%' identified with mysql_native_password by 'your_password';
grant all privileges on *.* to 'admin'@'%';
flush privileges;
#低版本可这样设置root在任意位置登录
grant all privileges on *.* to 'root'@'%' identified with mysql_native_password by 'your_password' with grant option;
#高版本的应该这样设置
sudo mysql_secure_installation
运行以下命令以创建一个名为newuser的新用户,并授予其只能从特定IP地址访问MySQL服务器的权限
CREATE USER 'newuser'@'IP_address' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'IP_address';
FLUSH PRIVILEGES;
默认情况下,mysql是运行在127.0.0.1上,此时是无法远程被访问的
root@JumpServer-DB-P01:/opt# netstat -tunlp|grep 3306
tcp 0 0 127.0.0.1:33060 0.0.0.0:* LISTEN 59257/mysqld
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 59257/mysqld
root@JumpServer-DB-P01:/opt#
因此需要修改mysqld的配置文件,路径如下
vim /etc/mysql/mysql.conf.d/mysqld.cnf
将127.0.0.1改成0.0.0.0 ,保存并重启mysql服务

修改后再次查看mysql是运行在127.0.0.1上
root@JumpServer-DB-P01:~# netstat -tunlp|grep 3306
tcp 0 0 0.0.0.0:33060 0.0.0.0:* LISTEN 79797/mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 79797/mysqld
root@JumpServer-DB-P01:~#
指定服务器IP、端口登录数据库
mysql -h 10.0.0.1 -P 3306 -u root -p
找到mysql的默认密码在这里:
CentOS:
cat /var/log/mysqld.log
Ubuntu:
cat /etc/mysql/debian.cnf
低版本的mysql默认安装后没有密码,可以如下方式设置密码
sudo mysql -u root
#将 "password" 替换为您要设置的密码。请注意,在新的 MySQL 8.0 版本中,密码策略要求密码长度至少为8个字符,并且必须包含数字、小写字母、大写字母和特殊字符。
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';
FLUSH PRIVILEGES;
#1、查看数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| jumpserver |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
#2、使用jumpserver这个数据库
mysql> use jumpserver
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
#3、查看所有的jumpserver库中的表
mysql> show tables;
+---------------------------------------------+
| Tables_in_jumpserver |
+---------------------------------------------+
| accounts_account |
| users_user |
| users_user_groups |
| users_user_user_permissions |
| users_usergroup |
| users_userpasswordhistory |
+---------------------------------------------+
137 rows in set (0.00 sec)
#4、从users_user这个表中计数,算出来22个
mysql> select count(*) from users_user;
+----------+
| count(*) |
+----------+
| 22 |
+----------+
1 row in set (0.01 sec)
查看mysql的进程
root@JumpServer-DB-P01:/opt# ps -ef | grep mysql
mysql 59257 1 0 17:36 ? 00:00:01 /usr/sbin/mysqld
root 60629 53830 0 17:39 pts/0 00:00:00 grep --color=auto mysql
root@JumpServer-DB-P01:/opt#
查看mysql的端口3306和33060
root@JumpServer-DB-P01:/opt# netstat -tunlp
激活Internet连接 (仅服务器)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 971/systemd-resolve
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1176/sshd: /usr/sbi
tcp 0 0 127.0.0.1:33060 0.0.0.0:* LISTEN 59257/mysqld
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 59257/mysqld
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 31673/redis-server
tcp6 0 0 :::22 :::* LISTEN 1176/sshd: /usr/sbi
tcp6 0 0 ::1:6379 :::* LISTEN 31673/redis-server
udp 0 0 127.0.0.53:53 0.0.0.0:* 971/systemd-resolve
root@JumpServer-DB-P01:/opt#
MySQL数据库基础常用命令8.0版本适用
#查询数据库账户
select user, host from mysql.user;
#删除账户 'zabbix'
drop user 'zabbix'@'%';
#查询数据库
show databases;
#删除数据库zabbix;
drop database zabbix;
#修改账户密码
alter user 'zabbix'@'%' identified by 'Qqqq1234.com';
分割线
从docker环境中的mysql里备份数据库
用docker ps命令定位容器名称叫jms_mysql
history
606 docker exec -it jms_mysql bash
607 docker ps
608 docker cp jms_mysql:/all_db_with_data.sql /root/
root@jumpserver-app-p01:/root#docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3081f875d979 jumpserver/core:v3.0.3 "./entrypoint.sh sta…" 9 days ago Up 9 days (healthy) 8080/tcp jms_core
c9f813565a08 jumpserver/mariadb:10.6 "docker-entrypoint.s…" 9 days ago Up 9 days (healthy) 3306/tcp jms_mysql
207f878b9a66 jumpserver/redis:6.2 "docker-entrypoint.s…" 9 days ago Up 9 days (healthy) 6379/tcp jms_redis
root@jumpserver-app-p01:/root#
进入到jms_mysql容器中
root@jumpserver-app-p01:/root#docker exec -it jms_mysql bash
root@c9f813565a08:/#
导出所有的数据库(此方法数据库版本必须一致)
root@c9f813565a08:/# mysqldump -h127.0.0.1 -P3306 -uroot -pNDIwNURCOTYtMDYzQS01Njg0LT --all-databases > all_db_with_data.sql
root@c9f813565a08:/# ls
all_db_with_data.sql bin boot dev docker-entrypoint-initdb.d etc home lib lib32 lib64 libx32 media mnt opt proc root run sbin srv sys tmp usr var
root@c9f813565a08:/# exit
#存到root目录下
root@jumpserver-app-p01:/opt/jumpserver/config#docker cp jms_mysql:/all_db_with_data.sql /root/
#进入root目录
root@jumpserver-app-p01:/opt/jumpserver/config#cd
#查看文件
root@jumpserver-app-p01:/root#ls
all_db_with_data.sql anaconda-ks.cfg Desktop Documents Downloads initial-setup-ks.cfg jp.sql Music Pictures Public Templates Videos
#传输文件到本地
root@jumpserver-app-p01:/root#sz all_db_with_data.sql
导出指定数据库(以jumpserver数据库为例)
登录数据库查看其中包括的jumpserver数据库名称后退出
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| jumpserver |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.000 sec)
MariaDB [(none)]> exit
用mysqldump导出jumpserver数据库为sql语句
root@c9f813565a08:/# mysqldump -B jumpserver -h127.0.0.1 -uroot -pNDIwNURCOTYtMDYzQS01Njg0LT > jumpserver.sql
root@c9f813565a08:/# ls
jumpserver.sql boot docker-entrypoint-initdb.d home lib lib64 media opt root sbin sys usr
bin dev etc lib32 libx32 mnt proc run srv tmp var
root@c9f813565a08:/# exit
exit
退出容器,在容器内的jumpserver.sql语句cp到容器外的root目录下,最后sz传输到本地
root@jumpserver-app-p01:/root#docker cp jms_mysql:/jumpserver.sql /root/
root@jumpserver-app-p01:/root#ls
all_db_with_data.sql anaconda-ks.cfg Desktop Documents Downloads initial-setup-ks.cfg jp.sql jumpserver.sql Music Pictures Public Templates Videos
root@jumpserver-app-p01:/root#sz jumpserver.sql
进入到目标数据库中,把本地文件上传输到目标服务器的/opt路径下。通过拖拽或者sftp传输均可
root@JumpServer-DB-P01:~# cd /opt
root@JumpServer-DB-P01:/opt# ls
jumpserver.sql redis redis-6.2.10 redis-6.2.10.tar.gz
root@JumpServer-DB-P01:/opt#
在此目录下登录mysql,先创建jumpserver数据库,再执行source 导入表
root@jumpserver-app-t01:#mysql -uroot -p
Enter password:
mysql> create database jumpserver default charset 'utf8' collate 'utf8_bin';
Query OK, 1 row affected, 2 warnings (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
使用jumpserver数据库,然后执行source命令导入表
mysql> use jumpserver;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> source /opt/jumpserver.sql
Query OK, 0 rows affected, 1 warning (0.00 sec)
Query OK, 0 rows affected, 2 warnings (0.05 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 49 rows affected (0.00 sec)
Records: 49 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
mysql>
检查结果:导入137条完成。
mysql> show tables;
+---------------------------------------------+
| Tables_in_jumpserver |
+---------------------------------------------+
| accounts_account |
| accounts_accountbackupautomation |
| users_user_groups |
| users_user_user_permissions |
| users_usergroup |
| users_userpasswordhistory |
+---------------------------------------------+
137 rows in set (0.00 sec)
mysql>
MySQL部署后配置的更多相关文章
- mysql部署后无法远程连接的原因(错误代码10061),服务监听127.0.0.1和0.0.0.0的区别
在Ubuntu上部署mysql服务并添加了一个非root用户后,发现无法远程连接, Navicat连接mysql出现2003——can't connect to mysql server on loc ...
- MySQL 复制 - 性能与扩展性的基石 2:部署及其配置
正所谓理论造航母,现实小帆船.单有理论,不动手实践,学到的知识犹如空中楼阁.接下来,我们一起来看下如何一步步进行 MySQL Replication 的配置. 为 MySQL 服务器配置复制非常简单. ...
- centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解
centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解 操作系统:centos 7.2 x86_64 安装walle系统服务端 1.以下安装,均在宿主机( ...
- 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)
阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...
- window MySQL解压缩版部署及配置
MySQL安装分为解压文件和直接安装.exe文件 我在官网下载的是解压文件 官网下载地址https://dev.mysql.com/downloads/mysql/ 一.MySQL部署 1.将下载下来 ...
- saltsack自动化配置day03:服务部署mysql部署
一.MySQL集群需求分享 1.抽象:功能模块 把基础的写成通用 服务部署也要抽象出来模块 redis内存有的多,有的少,可以config set在线更改 redis 安装.配置.启动 mysql 安 ...
- tomcat配置根目录访问后,部署后第一次访问会出现tomcat的默认界面而非项目首页
tomcat配置根目录访问后,部署后第一次访问会出现tomcat的默认界面而非项目首页,而重启后会正常,这个原因是因为在配置文件中有如下配置,造成项目加载两次 <Host name=" ...
- 重装系统后配置原有的mysql
1.重装系统后配置原有的mysql 2.修改 my.ini [修改 basedir:MySQL当前所在路径 datadir 数据存放路径] [mysqld] # 设置3306端口 port= # 设 ...
- springboot 配置热部署 及 热部署后依旧是404的坑
springboot配置热部署的教程网上一大堆: 个人喜欢这种方式: https://www.cnblogs.com/winner-0715/p/6666579.html 本文主要强调的是,大家如果配 ...
- MYSQL多实例配置与使用教程
原文http://www.111cn.net/database/mysql/58651.htm 在实际的开发过程中,可能会需要在一台服务器上部署多个MYSQL实例,那建议使用MYSQL官方的解决方案 ...
随机推荐
- SpringBoot 后端配置 Https 教程
以阿里云为例子 1. 申请 SSL 证书 1. 注册域名 打开阿里云官网,搜索域名 点击域名注册,输入域名,点击搜索 选择心仪的域名,点击购买,打钱 进入域名控制台,进行实名认证 2. 申请 SSL ...
- fmt 库简介和示例【GO 基础】
〇.关于 fmt fmt 标准库是 Go 语言标准库的一部分,提供了格式化字符串.输入输出等基本功能.通过 fmt 库,我们可以进行简单的格式化输出.读取用户输入.错误输出等操作. fmt 库实现了类 ...
- c语言代码练习13
//打印九九乘法表#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { int x = 0; int y = ...
- Go 基础之基本数据类型
Go 基础之基本数据类型 目录 Go 基础之基本数据类型 一.整型 1.1 平台无关整型 1.1.1 基本概念 1.1.2 分类 有符号整型(int8~int64) 无符号整型(uint8~uint6 ...
- 浅谈关于LCA
prologue 本身只会 tarjan 和 倍增法求LCA 的,但在发现有一种神奇的\(O(1)\) 查询 lca 的方法,时间优化很明显. main body 倍增法 先讨论倍增法,倍增法求 lc ...
- 14. 从零开始编写一个类nginx工具, HTTP文件服务器的实现过程及参数
wmproxy wmproxy将用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,后续将实现websocket代理, 内外网穿透等, 会将实现过程分享出来, 感 ...
- 自定义过滤器配置 Shiro 认证失败返回 json 数据
by emanjusaka from https://www.emanjusaka.top/archives/11 彼岸花开可奈何 本文欢迎分享与聚合,全文转载请留下原文地址. Shiro权限框架 ...
- 04-23: dataclasses使用方法
vehicle_seeds: List[int] = dataclasses.field(default_factory=list) dataclasses 模块提供了一种简洁的方式来定义Python ...
- CSP-2023 复赛游记
10.15 决定以后每天晚上都来. 洛天依也是. 10.16 想住 首旅京伦. 大巴车要求车况良好,保险齐全,进校后限速 20 km是什么鬼啊,新型速度单位. 距离最远的考区相距4公里 懂了,大巴车开 ...
- 文心一言 VS 讯飞星火 VS chatgpt (123)-- 算法导论10.4 4题
四.用go语言,对于一个含 n个结点的任意有根树,写出一个 O(n)时间的过程,输出其所有关键字该树以左孩子右兄弟表示法存储. 文心一言: 在计算机科学中,左孩子右兄弟表示法是一种用于表示树状结构的方 ...