用ini文件远程连接mysql_MySQL
程序员文章站
2022-06-17 21:59:22
...
bitsCN.com
用ini文件远程连接mysql 最近改写个东西,又重新写了写MySql的连接。为了便于灵活应用,用读取ini文件的方式读取mysql连接参数。 顺便学习了下ini文件。 ini格式。ini文件由很多节组成。 [cpp] [NETWORK]//节 host=*.*.*.*//host:键、IP:值 user=root pwd=//不写即为空 读取: [cpp] GetPrivateProfileString("NETWORK","host","",host.GetBuffer(MAX_PATH),MAX_PATH,strFileName); 参数列表依次为:节名,键名,lpdefault,键值,键值长度,ini文件路径lpDefault : 如果INI文件中没有前两个参数指定的字段名或键名,则将此值赋给变量.返回值:键值。 写:[cpp] WritePrivateProfileString("NETWORK","host","1.2.3.4",strFileName); 参数列表依次为:节名,键名,键值,ini文件路径返回值:Long,非零表示成功,零表示失败 文件路径: 1.INI文件的路径必须完整,文件名前面的各级目录必须存在,否则写入不成功,该函数返回 FALSE 值. 2.文件名的路径中必须为 // ,因为在VC++中, // 才表示一个 / . 3.也可将INI文件放在程序所在目录,此时 lpFileName 参数为: ".//student.ini".配置文件写好了,接着就是连接: [cpp] mysql_real_connect(&mydata,host,user,pwd,database,port,unix_socket,clientflag); //其中的参数即是读取文件获得的。 数据的连接晚上帖子一堆,不再重述。mysql的连接基类已写好。稍后上传到资源。 想要远程连接,还有一个很重要的步骤:设置服务器可以远程: 1、在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。 2、在mysql控制台执行 GRANT ALL PRIVILEGES ON *.* TO ‘root'@'%' IDENTIFIED BY ‘MyPassword' WITH GRANT OPTION; 3、 mysql> FLUSH PRIVILEGES; //使修改立即生效 可能会出现10060无法连接的错误,这时要查看下是否防火墙禁用了3306端口。 bitsCN.com
用ini文件远程连接mysql 最近改写个东西,又重新写了写MySql的连接。为了便于灵活应用,用读取ini文件的方式读取mysql连接参数。 顺便学习了下ini文件。 ini格式。ini文件由很多节组成。 [cpp] [NETWORK]//节 host=*.*.*.*//host:键、IP:值 user=root pwd=//不写即为空 读取: [cpp] GetPrivateProfileString("NETWORK","host","",host.GetBuffer(MAX_PATH),MAX_PATH,strFileName); 参数列表依次为:节名,键名,lpdefault,键值,键值长度,ini文件路径lpDefault : 如果INI文件中没有前两个参数指定的字段名或键名,则将此值赋给变量.返回值:键值。 写:[cpp] WritePrivateProfileString("NETWORK","host","1.2.3.4",strFileName); 参数列表依次为:节名,键名,键值,ini文件路径返回值:Long,非零表示成功,零表示失败 文件路径: 1.INI文件的路径必须完整,文件名前面的各级目录必须存在,否则写入不成功,该函数返回 FALSE 值. 2.文件名的路径中必须为 // ,因为在VC++中, // 才表示一个 / . 3.也可将INI文件放在程序所在目录,此时 lpFileName 参数为: ".//student.ini".配置文件写好了,接着就是连接: [cpp] mysql_real_connect(&mydata,host,user,pwd,database,port,unix_socket,clientflag); //其中的参数即是读取文件获得的。 数据的连接晚上帖子一堆,不再重述。mysql的连接基类已写好。稍后上传到资源。 想要远程连接,还有一个很重要的步骤:设置服务器可以远程: 1、在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。 2、在mysql控制台执行 GRANT ALL PRIVILEGES ON *.* TO ‘root'@'%' IDENTIFIED BY ‘MyPassword' WITH GRANT OPTION; 3、 mysql> FLUSH PRIVILEGES; //使修改立即生效 可能会出现10060无法连接的错误,这时要查看下是否防火墙禁用了3306端口。 bitsCN.com