首先配置好golang环境,我此时使用的是1.17版本
m1已经支持docker了,下载好docker使用如下命令安装mysql:
在这里插入图片描述
官方的镜像是不支持arm架构的,所以我们要使用如上所示的docker镜像。
接下来开启一个容器,此时我命名为mysql:
在这里插入图片描述
如上所示开启了映射端口并且使用了端口映射在3306处。
接下来进入容器:
在这里插入图片描述
进入后进入mysql

mysql -u root -p

输入刚刚设置的密码:123456进入mysql命令行:
为了让程序能够连接进行相应配置项的修改:

CREATE USER 'root'@'%' IDENTIFIED BY 'root';
GRANT ALL ON *.* TO 'root'@'%';
flush privileges;
alter user 'root'@'%' identified by '123456';
flush privileges;

输入完上面的代码即可进行连接测试:

import ("database/sql""fmt"_ "github.com/go-sql-driver/mysql"
)func main() {dsn := "root:123456@tcp(127.0.0.1:3306)/golang?charset=utf8mb4&loc=PRC&parseTime=true" //字符串格式由对应的驱动进行定义db, err := sql.Open("mysql", dsn)fmt.Println(db, err)fmt.Println(db.Ping())
}

连接成功:
在这里插入图片描述

执行写操作:

fmt.Println(db.Exec(`
create table test(id bigint primary key auto_increment,name varchar(32) not null default '' comment 'test名字'
) engine=innodb default charset utf8mb4;
`))

在这里插入图片描述
查看数据库:
在这里插入图片描述