MySQL入门教程:怎么初始化授权表
MySQL入门教程:怎么初始化授权表?一旦你已经安装了MySQL(从一个二进制代码或源代码分发),你需要初始化授权表,因为此时MySQL权限系统需要的数据库和表并不存在。然后再启动服务器并且保证服务器正确运行。你也可以希望安排服务器在你的系统开机和关机时自动地被启动和停止。
安装授权表之前,首先请切换到mysql帐户,这也是我们很少使用这一前面建立的帐户的机会。
通常,对从源代码分发的安装,你象这样安装授权表并启动服务器:
#su mysql
$cd BASEDIR(缺省为/usr/local/mysql)
$./scripts/mysql_install_db
对二进制分发,这样做:
#su mysql
$cd BASEDIR(缺省为/usr/local/mysql)
$./bin/mysql_install_db
对于rpm分发,这样做:
#su mysql
$mysql_install_db
对于Win32平台上的分发,由于安装后,授权表已经存在,故没有必要使用mysql_install_db,而且也不存在这个脚本。如果你需要初始化授权表,你可以删除数据库目录中的mysql目录,即删除mysql数据库,然后再运行setup.exe文件,即可初始化授权表。
典型地,mysql_install_db仅在你第一次安装MySQL时需要运行,因此,如果你正在升级现有的安装,你可以跳过这一步。(然而,mysql_install_db的使用相当安全,并且将不更新已经存在的任何表,因此如果你是不能肯定做什么,你总是可以运行mysql_install_db。) mysql_install_db在mysql数据库里创建6个表(user、db、host、tables_priv、columns_priv和func),初始权限的描述在第七章数据库安全中给出。简单地说,这些权限允许MySQL root用户做任何事情,并且允许任何人创建立或使用一个名字以'test'或'test_'开始的数据库。
如果你不设置权限表,当你启动服务器时,下列错误将在日志文件出现:
mysqld: Can't find file: 'host.frm'
-
标签错误:<!-- #Label#
labelId=20160707140604
moduleId=1
classId=12231768634
orderby=2
fields=url,title,u_info
attribute=
datatypeId=22192428132
recordCount=3
pageSize=
<htmlTemplate><dt><img src="/images/index_26${index}.jpg" width="100" height="62" /><a href="$url" title="${title}">${title}</a><span>${api.left(u_info,60)}</span></dt></htmlTemplate>
-->
- 我要参加技术沙龙