服务器其他
主页 > 服务器 > 服务器其他 >

aarch64服务器部署mysql的流程介绍

2022-09-30 | 佚名 | 点击:

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'@‘%';

原文链接:https://blog.csdn.net/tianmingqing0806/article/details/127015661
相关文章
最新更新