系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > server > anz > 详细页面

aarch64服务器部署mysql的流程分析

时间:2022-10-02来源:www.pcxitongcheng.com作者:电脑系统城

aarch64服务器-部署mysql

aarch64服务器-部署nacos

1、创建工作目录

1 mkdir -p /apps/mysql/{mydir,datadir,conf,source}

2、编写docker-compose.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
version: '3'
services:
  mysql:
    restart: always
    image: mysql/mysql-server
    container_name: mysql-lable
    volumes:
      - /apps/mysql/mydir:/mydir
      - /apps/mysql/datadir:/var/lib/mysql
      - /apps/mysql/conf/my.cnf:/etc/my.cnf
      # 数据库还原目录 可将需要还原的sql文件放在这里
      - /apps/mysql/source:/docker-entrypoint-initdb.d
    environment:
      - "MYSQL_ROOT_PASSWORD=xxx"
      - "MYSQL_DATABASE=xxx"
      - "TZ=Asia/Shanghai"
    ports:
      # 使用宿主机的3306端口映射到容器的3306端口
      # 宿主机:容器
      - 3307:3306

所在服务器

1
2
3
4
5
192.168.2.241  
root@minio-3:~/mysql-8.0# ls
docker-compose.yaml
root@minio-3:~/mysql-8.0# pwd
/root/mysql-8.0

3、编写数据库配置文件。

/apps/mysql/conf/my.cnf

1
2
3
4
5
6
7
8
9
10
11
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
character-set-client-handshake=FALSE
collation-server=utf8_unicode_ci
init_connect='SET NAMES utf8'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

4、启动

启动容器的时候,需要先检查所使用的端口是否被占用。

1
2
3
4
5
$ docker-compose up -d
$ docker-compose ps
Name                 Command             State           Ports
--------------------------------------------------------------------------
mysql-lable   docker-entrypoint.sh mysqld   Up      0.0.0.0:3306->3306/tcp

image-20220915112712741

5、测试

进入容器,使用密码登录数据库,并查看数据库有没有创建所指定的库,库里面有没有导入你的sql数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
### docker exec -it 容器ID(使用docker ps查看) /bin/bash
$ docker exec -it e592ac9bfa70 /bin/bash
# root@e592ac9bfa70:/# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 31451
Server version: 5.7.18 MySQL Community Server (GPL)
 
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql>
 
# 查看数据
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql_data_test    |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)
 
mysql> use mysql_data_test  #这个是我自己的恢复数据文件
mysql> show tables;
.......

 

记录报错

连接报错

1 Host is not allowed to connect to this MySQL server解决方法
1 https://blog.csdn.net/bingjianit/article/details/54384299 #解决文章
1
2
3
4
在装有MySQL的机器上登录MySQL mysql -u root -p密码
执行use mysql;
执行update user set host = '%' where user = 'root';这一句执行完可能会报错,不用管它。
执行FLUSH PRIVILEGES;

创建用户授权用户,修改root密码

1 mysqladmin -uroot -p'123456'  password 'xxxx'

一. 创建用户

命令:

1
2
3
4
5
6
7
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
例子:
CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';

二. 授权:

命令:

1
2
3
4
GRANT privileges ON databasename.tablename TO 'username'@'host'
例子:
GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';

三. 授权:

命令:

1 GRANT privileges ON databasename.tablename TO ‘username'@‘host'

例子:

1
2
GRANT SELECT, INSERT ON test.user TO ‘pig'@‘%';
GRANT ALL ON . TO ‘pig'@‘%';

到此这篇关于aarch64服务器部署mysql的文章就介绍到这了

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载