MySQL学习
一、安装
以前使用SuSE,习惯了使用安装包安装软件,后来接触了Ubuntu,这项技能丢得差不多了,实在不行,遇到问题就百度吧。
在Ubuntu下安装一般就是一句话sudo apt-get install xxxx,但它要求是联网的,因为它需要到服务器上下载软件包。当然如果你的服务器无法上网的话,也可以试着执行下,这样它会告诉你需要哪几个软件包和对应的下载地址。你可以下载了之后,再传到服务器上手动安装。
二、登录
一般有两种方式登录mysql,一种是直接使用mysql命令进行登录,可以使用ssh登录到服务器上后执行
mysql -h localhost -u root -p
另外一种是使用mysql提供的图形化的工具MySQL Workbench,实际上它在后台所做的工作和上面描述的应该差不多,只是把它封装成了界面操作。
三、创建数据库和表
mysql安装好后有个默认的数据库mysql,我们通常都需要自己创建数据库,以数据库名record为例
create database recrod;
数据库建好之后,使用use record;切换到数据库record中,再执行创建表的操作。
一般数据库和表的创建都是写到一个sql文件中,然后执行该文件,这种便于环境的安装。以文件名为create.sql为例
source create.sql;
四、创建用户
创建用户的目的是权限控制,即特定的用户只能访问特定的数据库,以及对数据库拥有特定的权限。
grant insert,delete,update,select on record.* to test1@'%' identified by '12345';
创建用户test1,他可以在任意ip访问数据库record,密码为12345,他拥有对数据库增删改查的权限。
五、数据操作
常用的数据操作包括insert,delete,update,select,俗称为“增删改查”,这里虽然把查询放在最后一位,实际应用中查询却是使用最频繁的,因为数据的变动毕竟比较少,最多的还是根据各种条件查询出需要的数据。
六、C API编程
以上操作都是登录到数据库,直接执行命令和查看结果,而程序员使用数据库的方式通常都是在代码中访问数据库。这里只描述C API(个人只熟悉C、C++)。
1. mysql_init(),初使化库
2. mysql_real_connect(),连接数据库,这里需要给出数据库的IP地址,数据库名,用户名,密码等信息
3. 通过以上两步就连接上了数据库,可以对数据库进行操作了,通过snprintf将操作进行格式化,然后调用mysql_query()或者mysql_real_query()执行命令,函数名虽然叫查询,但实际上插入、删除和更新的操作也是通过它执行的。
4. 调用mysql_use_result(),将结果准备好,调用mysql_fetch_row()获取每行的结果
5. 操作完所有的结果后,调用mysql_free_result()释放内存
6. mysql_close(),关闭数据库,一般在程序退出时,才会调用。
以上是个人学习mysql的一些记录,更详细和精确的内容可以参考官网http://dev.mysql.com/doc/refman/5.7/en/index.html
浙公网安备 33010602011771号