mysql 里面有go的用法吗

mysql 里面有go的用法吗,第1张

mysql不像 SQL Server,写一段SQL,要go了才执行,默认 分号就执行了。

在网上找了一大堆例子,最后简化一下把,一下会从安装mysql开始,与大家分享一下如何用go链接服务器上的mysql

我用的是ubuntu系统

1,安装mysql:sudo apt-get install mysql-server (记住root的密码假设密码为root123)

2,进入mysql:mysql -uroot -p 然后输入密码

3,创建一个数据库:create database people

4,给数据库people添加用户:GRANT ALL PRIVILEGES ON people.* TO peo@localhost IDENTIFIED BY "peo123"

5,调整数据库配置以便于远程访问:GRANT ALL PRIVILEGES ON people.* TO peo@“%” IDENTIFIED BY "peo123"然后推出mysql执行:sudo nano /etc/mysql/my.cnf

修改bind-address=127.0.0.1 到bind-address= 机器的IP(就是安装mysql的机器的ip)

6,重启mysql:sudo /etc/init.d/mysql restart

7,建表:首先进入mysql:mysql -u peo -p

进入数据库下:use people

创建表:create table hello(age int, name varchar(10))

插入一条数据:insert into hello(age, name) values(19, "hello world")

至此数据库方面的工作已经做好,接下来是go语言了

8,首先下载mysql的驱动包(应该是这样叫)执行 go get github.com/go-sql-driver/mysql代码会下载到你的gopath下(执行export可以查看gopath)

接着就是下面的代码了

package main

import "database/sql"

import _ "github.com/go-sql-driver/mysql"

import "encoding/json"

import "fmt"

type User struct {

Age int `json:"age"`

Name string `json:"name"`

}

func main() {

fmt.Println("start")

db, err := sql.Open("mysql", "peo:peo123@tcp(192.168.0.58:3306)/people?charset=utf8")

if err != nil {

panic(err)

}

rows, err := db.Query("select age,name from hello")

if err != nil {

panic(err)

}

defer rows.Close()

for rows.Next() {

user := &User{}

err = rows.Scan(&user.Age, &user.Name)

if err != nil {

painc(err)

}

b, _ := json.Marshal(user)

fmt.Println(string(b))

}

println("end")

}

至此结束

下载安装

到https://code.google.com/p/go/downloads/list,下载1.2版本go安装包,你可以选择MSI文件安装也可以下载ZIP压缩包,双击你所下载的MSI文件,然后根据安装引导一路下一步,一般默认安装在c:\Go目录

2

自动设置环境变量

安装引导会把C:\Go\bin设置到你的系统换环境PATH上,你需要关闭所有打开的CMD命令窗口,再次打开,输入go,出现帮助信息,出现如图信息说明你安装成功

3

ZIP包安装

下载ZIP文件并解压到所选目录(建议目录 C:\Go),如果你不解压到C:\Go目录,你必须设置GOROOT环境变量,添加C:\Go\bin 到PATH环境变量,如果别的目录则添为%GOROOT%\bin

4

测试安装

在任何目录编写一个go文件,命名为hello.go。

package main

import "fmt"

func main(){

fmt.Printf("Hello 百度回享")

}

打开CMD命令窗口,cd到hello.go目录,运行go run hello.go

5

下载mysql驱动包

使用github.com/go-sql-driver/mysql这个驱动包,打开cmd窗口输入:go get github.com/go-sql-driver/mysql,会下载到你的GOPATH路径的src 下

6

代码如下:

package main

import (

"database/sql"

"fmt"

_ "github.com/go-sql-driver/mysql"

)

func testSelect() {

db, err := sql.Open("mysql", "root:111111@tcp(127.0.0.1:3333)/showme?charset=utf8")

if err != nil {

fmt.Printf("connect err")

}

rows, err1 := db.Query("select userid,username from tb_user limit 0,5")

if err1 != nil {

fmt.Println(err1.Error())

return

}

defer rows.Close()

fmt.Println("")

cols, _ := rows.Columns()

for i := range cols {

fmt.Print(cols[i])

fmt.Print("\t")

}

fmt.Println("")

var userid int

var username string

for rows.Next() {

if err := rows.Scan(&userid, &username)err == nil {

fmt.Print(userid)

fmt.Print("\t")

fmt.Print(username)

fmt.Print("\t\r\n")

}

}

}

func main() {

testSelect()

}

MySQL是一个跨平台开源的关系型数据库管理系统,多用于中小型网站或系统的开发。软件开发使用数据库技术可以方便实现数据的共享,减少数据的冗余,也方便统一对数据进行 *** 作和控制。MySQL相对于Oracle、DB2等大型数据库具有体积小、速度快、成本低的特点,这些特性使得MySQL在开源世界大受欢迎。下面我带领大家去学习mySQL的下载及安装。

工具/材料

Windows *** 作系统

MySQL有两个不同的版本, MySQL Community Server 是免费的社区版,MySQL Enterprice Server是企业版服务器,该版本需要付费,官方会提供技术支持。小型的软件开发或者自己学习使用,我们下载免费的社区版即可。我们在搜狗搜索框中输入mysql官网,进入到如下的页面,点击DOWNLOADS-->Community。

我们在跳转的页面选择MySQL Community Downloads下方的DOWNLOAD按钮,选择Windows版本的安装包,我们选择MSI格式的安装包,点击Go to Download按钮,如下图所示。安装包只能选择32位的,即便本机是64位的 *** 作系统也没有关系,图中有两个安装版本,第一个版本在线安装,第二个下载的版本离线安装。我们在安装的过程中不需要登录,选择No thanks, just start my download。

安装包下载完成后,我们点击右键进行安装,安装过程中License Agreement选择I accept the licence terms。安装类型选择Server only,执行过程如下图所示。

安装过程中,我们可以看到默认端口号是3306,接下来我们需要输入密码,密码不要设置太弱。安装过程中我们勾选开机自启动,如下图所示。执行安装我们选择Execute,然后便是开始等待安装即可。

安装完成后,我们找到本机的MySQL的客户端工具,这是一个命令行工具,可以执行sql命令,但不能用于复杂的开发工作,使用这个工具可以帮我们快速入门mysql数据库。

我们打开这个客户端软件,输入完密码后,便可以看到光标处的mysql>, 输入show databases可以看到默认的数据库有哪些。其他的sql命令也很多,我们便不再一一列举了。

特别提示

安装过程中可能会提示Microsoft Visual C++ 2015 没有安装之类的,我们在线等待安装完成即可,这个时间可能有点久,请耐心等待。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7569075.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存