炫彩好望角 The Colorful Cape of Good Hope

庸人不必自扰,智者何需千虑?

常用链接

统计

最新评论

《Beginning Linux Programming》学习笔记 04:MySQL

第 8 章“MySQL”的学习笔记。如今 LAMP 大行其道,还用 C / C++ 接口是否有些非主流呢?

安装和配置 MySQL

下面是我的安装配置步骤,完成后可以从主机(Windows)上的 NetBeans 连接到客机(VirtualBox 中的 Debian)上的 MySQL 数据库:

  1. 安装 MySQL 数据库和开发工具包:
                    root@vdeb:~$ apt-get install mysql-server
                    root@vdeb:~$ apt-get install libmysqlclient-dev
                
    装完后 MySQL 就自动运行了。
  2. 编辑 /etc/mysql/my.cnf,将“bind-address = 127.0.0.1”这一行注释掉,再加一行“default-storage-engine=INNODB”,然后重启 MySQL:
                    root@vdeb:~$ mysqladmin -uroot -p shutdown
                    root@vdeb:~$ mysqld_safe &
                
    这使得可从远程客户端访问 MySQL 数据库,并且存储引擎改用 InnoDB,因为默认的 MYISAM 不支持事务。
  3. 因为安全问题,root 用户默认不支持远程登录。所以最好另外创建一个用户,并赋予相应权限:
                    zhyi@vdeb:~$ mysql -uroot -p
                    mysql> create database zhyidb;
                    mysql> grant all on zhyidb.* to 'zhyi'@'%' identified by 'pwd';
                    mysql> \q
                
    以上命令创建了一个数据库 zhyidb,并且将对它的全部操作权限赋予用户 zhyi。用户 zhyi 将被自动创建,初始密码为“pwd”,'zhyi'@'%' 表示可从任意远程主机使用 zhyi 用户进行登录。
  4. 在 VirtualBox 中配置端口转发 3306→3306,然后就可以直接用 NetBeans 的数据库资源管理器连接刚创建的 zhyidb 数据库了。这里是 JDBC 客户端,其他类型的客户端也应该没有问题。

执行 SQL 语句

不看不知道,一看吓一跳!本以为通过 C 接口操作数据库比较高深,结果越看越眼熟:这不就是 JDBC 的翻版吗?(也许应该反过来说才对)不论执行查询还是操作事务都如出一辙。这样看来,JDBC 实际上是两层封装(JDBC 接口→JDBC 驱动程序→数据库 API),而 JPA 之流的封装层次则更高了,难怪性能常常是老大难……

posted on 2011-05-12 09:34 蜀山兆孨龘 阅读(1979) 评论(1)  编辑 收藏 引用 所属分类: Linux

评论

# re: 《Beginning Linux Programming》学习笔记 04:MySQL[未登录] 2011-05-13 08:54 by

MYSQL用C API还是会存在好一段时间,毕竟很多后台服务都是C在写。  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理