原文:https://blog.csdn.net/ggm0928/article/details/83687111
一、简单分享Ubuntu 16.04下安装MySQL的过程。
首先执行下面三条命令:
sudo apt-get install mysql-server
sudo apt isntall mysql-client
sudo apt install libmysqlclient-dev
安装成功后可以通过下面的命令测试是否安装成功:
sudo netstat -tap | grep mysql
出现如下信息证明安装成功:
可以通过如下命令进入MySQL服务:
mysql -uroot -p你的密码
现在设置mysql允许远程访问,首先编辑文件/etc/mysql/mysql.conf.d/mysqld.cnf:
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉bind-address = 127.0.0.1:
保存退出,然后进入mysql服务,执行授权命令:
grant all on *.* to root@'%' identified by '你的密码' with grant option;
flush privileges;
然后执行quit命令退出mysql服务,执行如下命令重启mysql:
service mysql restart
现在在Windows下可以使用navicat远程连接Ubuntu下的MySQL服务:
Ubuntu 16.04安装MySQL及问题解决 http://www.linuxidc.com/Linux/2017-05/143861.htm
二、Linux下C++连MySQL数据库
1.查看本地有没有安装mysql,命令就是mysql,如果有这个命令就表示安装了mysql数据库软件。如果没有就自行安装。
sudo apt-get install mysql-server
sudo apt isntall mysql-client
sudo apt install libmysqlclient-dev
2.查看本地有没有安装mysql的开发包。命令是 `mysql_config --cflags --libs` 如果有安装就会有一串编译选项和连接库。如果没有就自行安装 mysql-devel-*****的rpm包 后面是版本号。mysql开发包提供了基本操作接口。安装后头文件在/usr/include/mysql 而动态库在 /usr/lib/mysql 上。
3.创建一个用于练习的数据库test.进入mysql> 然后依次输入:
mysql>create database test;
mysql>use test; //切换到test数据库中
mysql> create table test(name varchar(255),num int(10) ); //创建一个叫test的表
mysql>show create table test; //显示刚才创建的表信息
mysql> select * from test; //查询test表中数据
mysql>quit
4.编写一个c++程序,代码如下:
#include <stdio.h>
#include <mysql.h>
int main(int argc,char *argv[])
{
MYSQL conn;
int res;
mysql_init(&conn);
if(mysql_real_connect(&conn,"localhost","root","","test",0,NULL,CLIENT_FOUND_ROWS)) //"root":数据库管理员 "":root密码 "test":数据库的名字
{
printf("connect success!\n");
res=mysql_query(&conn,"insert into test values('user','123456')");
if(res)
{
printf("error\n");
}
else
{
printf("OK\n");
}
mysql_close(&conn);
}
return 0;
}
5.编译程序
使用的编译代码(注意哪两个不是单引号而是反单引号)
g++ test.cpp `mysql_config --cflags --libs` -o test
6.运行代码
./test
7.再次查看数据库
mysql>use test;
mysql>select * from test;
这样就可以查看到插入的信息了。
---------------------
作者:ggm0928
来源:CSDN
原文:https://blog.csdn.net/ggm0928/article/details/83687111
版权声明:本文为博主原创文章,转载请附上博文链接!