一、[root@sample ~]# yum -y install mysql-server ← 安装MySQL.....略Installed: mysql-server.i386 0:4.1.20-1.RHEL4.1Dependency Installed: mysql.i386 0:4.1.20-1.RHEL4.1 perl-DBD-MySQL.i386 0:2.9004-3.1 perl-DBI.i386 0:1.40-8Complete!
二、配置[root@sample ~]# vi /etc/my.cnf ← 编辑MySQL的配置文件
[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sock# Default to using old password format for compatibility with mysql 3.x# clients (those using the mysqlclient10 compatibility package).old_passwords=1 ← 找到这一行,在这一行的下面添加新的规则,让MySQL的默认编码为UTF-8default-character-set = gbk ← 添加这一行然后在配置文件的文尾填加如下语句:
[mysql]default-character-set = gbk
三、启动MySQL服务
[root@sample ~]# chkconfig mysqld on ← 设置MySQL服务随系统启动自启动
[root@sample ~]# chkconfig --list mysqld ← 确认MySQL自启动mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← 如果2--5为on的状态就OK
[root@sample ~]# /etc/rc.d/init.d/mysqld start ← 启动MySQL服务
启动mysql [确定]
备注:如果这一部执行失败有可能是/var/lib/mysql 没有数据库文件,会报【 Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist】,这是需要执行mysql_install_db命令就OK了。
四、MySQL的root用户设置密码MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。
[root@sample ~]# mysql -u root ← 用root用户登录MySQL服务器mysql> select user,host,password from mysql.user; ← 查看用户信息mysql>set password for root@localhost=password('在这里填入root密码'); ← 设置root密码mysql>set password for root@域名=password('在这里填入root密码');mysql> delete from mysql.user where user=''; ← 删除匿名用户mysql> exit ← 退出MySQL服务器【测试设置的密码是否正确】
五、删除测试用数据库mysql> show databases; ← 查看系统已存在的数据库mysql> drop database test; ← 删除名为test的空数据库
六、对MySQL进行测试。包括建立新用户,以及用对关系性数据库进行数据库操作的指令来试着建立数据库及数据表。这里,新建用户以 sleinetpub为例。
[root@sample ~]# mysql -u root -p ← 通过密码用root登录Enter password: ← 在这里输入密码
mysql> grant all privileges on test.* to sleinetpub@localhost identified by '在这里定义密码'; ← 建立对test数据库有完全操作权限的名为sleinetpub的用户mysql> select user from mysql.user where user='sleinetpub'; ← 确认sleinetpub用户的存在与否mysql> exit ← 退出MySQL服务器[root@sample ~]# mysql -u sleinetpub -p ← 用新建立的sleinetpub用户登录MySQL服务器Enter password: ← 在这里输入密码mysql> create database test; ← 建立名为test的数据库mysql> show databases; ← 查看系统已存在的数据库mysql> use test ← 连接到数据库mysql> create table test(num int, name varchar(50)); ← 在数据库中建立表mysql> show tables; ← 查看数据库中已存在的表mysql> drop table test; ← 删除表mysql> show databases; ← 查看已存在的数据库Empty set (0.01 sec) ← 确认test数据库已被删除(这里非root用户的关系,看不到名为mysql的数据库)mysql> exit ← 退出MySQL服务器
七、删除测试用过的遗留用户[root@sample ~]# mysql -u root -p ← 通过密码用root登录Enter password: ← 在这里输入密码mysql> revoke all privileges on *.* from sleinetpub@localhost; ← 取消sleinetpub用户对数据库的操作权限mysql> delete from mysql.user where user='sleinetpub' and host='localhost'; ← 删除sleinetpub用户mysql> select user from mysql.user where user='sleinetpub'; ← 查找用户sleinetpub,确认已删除与否Empty set (0.01 sec) ← 确认sleinetpub用户已不存在mysql> flush privileges; ← 刷新,使以上操作生效mysql> exit
八、最后,重新启动一次HTTP服务。
[root@undefined /]# /etc/rc.d/init.d/mysqld stop ← 停止HTTP服务停止mysql [确定]
[root@undefined /]# /etc/rc.d/init.d/mysqld start ← 启动HTTP服务启动mysql [确定]