随笔 - 119  文章 - 290  trackbacks - 0

博客搬家了哦,请移步
叫我abc

常用链接

留言簿(12)

随笔分类

我的博客

搜索

  •  

积分与排名

  • 积分 - 294919
  • 排名 - 83

最新评论

阅读排行榜



最近由于一些缘故看了看mysql,现将一些过程写下。文档中已经讲述的内容我就不重复了,主要是一些文档外的补充。本文针对mysql5.1稳定版,另外操作系统是linux的,不过想在windows下用mysql的同学还是有些东西可以参照的。

mysql doc : http://dev.mysql.com/doc/refman/5.1/en/
自己大概的过一遍文档是一个programmer所应具备的基本生存素质,有中文版的文档,可以自己google下。

1.安装mysql
首先到mysql.com的download页面选择一个安装包进行下载,下载的对象应该是mysql 5.1 GA release。这里还是有很多可选的安装包,因为我对RPM实在不是很熟(居然每个linux都不太一样,这是RPM和win的安装程序比起来最不好的地方了),因此选了一个linux No RPM package进行下载。
下载完成后,按照文档上的基本步骤进行安装,这个就不说明了,要说的是完成安装后要补充的一些事情。
1.1复制bin。
此时mysql的所有相关程序都应该在mysql/bin目录下,你要做的是,把mysql/bin下的所有文件都复制到usr/bin目录下,其实就像把一些程序复制到window/system32下一样。当然你也可以选择把系统查找路径设置到mysql/bin目录下。
1.2复制man。
man就是man手册页,跟MSDN差不多。用no RPM package的一个不好的地方,就是很多东西都需要自己拷贝,好像也没有提供一个默认的安装脚本。把mysql/man下的内容拷贝到usr/share/man下即可。
1.3执行默认的安全脚本。
首先就是运行mysql服务器了,核心程序是mysqld,应该是mysql deamon的意思吧。不过这里要执行的是一个包装器,mysqld_safe&。启动完服务器之后,执行mysql_secure_installation进行数据库安全方面的设定,他是一个向导型的程序,只要看看每一步的提示做出恰当的输入即可,总之就是要删掉一些测试的数据库和账号,并设置root的密码。
2.导出mysql.user的数据
mysql.user是mysql权限系统中的一个表,为什么导出他呢?我只是想弄到excel下好好看看而已。
mysql是mysql服务器中的一个默认数据库,记录用户权限方面的数据,所以花些时间看看这个数据库下的表格还是很有意义的。
2.1基本操作
show databases;显示当前你可以去看看的数据库。
use mysql;将mysql数据库设置为当前数据库。
show tables;显示当前数据库中的所有表格。
describe user;显示user这个表的每列定义。
2.2导出数据
用mysql客户端登录以后,使用select * from mysql.user into outfile '/home/account/user.data'; 将user表格中的数据导入到文件上。
2.3导出列名字
mysql.user里面的列很多,这么看数据文件可搞不清楚什么是什么,得知道每一列的名字才行。
mysql还有一个在运行后生成的只读数据库,保存数据库相关的metadata,名字是infomation_schema。每个表格的列名字都可以从这个数据库的columns表中查到。
select column_name from information_schema.columns where table_schema='mysql' and table_name='user' into outfile 'xxxx';
3.简单的账号分配
对账号采用了一个简单的授权规则,即每个账号只能访问一个数据库,这样的权限安排应该是够用的,并且能把很多事情简单化。
3.1新建一个数据库
新建一个数据库吧,第一件事情,总不能直接在mysql数据库中做后续的种种练习吧。所以,这里新建一个
create database ttyxx;
3.2新建账号并授权到这个数据库
接下来按照之前说的,该弄一个新账号,并让账号有权访问新的数据库。
create user 'name'@'localhost' identitied by 'password';建立新账号
grant all on ttyxx.* to 'name'@'localhost';将ttyxx的所有权利授权给新账号。
这个时候,应该去看看mysql.user增加了什么样的数据。我没记错的话,因为grant all的对象仅限于ttyxx,因此还是有些全局权限新账号是没有的,以后要是遇上有什么权限不足的错误,可以到这里直接修改表格。
修改后别忘了刷新到系统runtime上,用flush privileges;
3.3编辑配置文件
账号有了,希望每次启动mysql客户端可以不用输入账号和密码,这样可以在自己的目录下编辑一个配置文件,.my.cnf,在里面加上
[client]
user=name
password=xxx
posted on 2009-03-03 20:57 LOGOS 阅读(1898) 评论(2)  编辑 收藏 引用 所属分类: mysql入门

FeedBack:
# re: mysql的入门(1) 2009-03-04 18:08 true
图是用什么工具画的?  回复  更多评论
  
# re: mysql的入门(1) 2009-03-04 19:50 LOGOS
@true
xmind
http://www.xmind.net/
  回复  更多评论
  

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理