1)安装方法一:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

安装 MySQL 及相关组件

1 、安装 MySQL

# yum -y install mysql-server   安装 MySQL

2 、安装 PHP 访问 MySQL 数据库的工具“ php-mysql ”。

# yum -y install php-mysql   安装 php-mysql

 

配置 MySQL

# vi /etc/my.cnf   编辑 MySQL 的配置文件

 

[mysqld]

datadir=/var/lib/mysql

socket=/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-8

default-character-set = utf8   添加这一行

 

然后在配置文件的文尾填加如下语句:

 

[mysql]

default-character-set = utf8

 

启动 MySQL 服务

# chkconfig mysqld on   设置 MySQL 服务随系统启动自启动

# chkconfig --list mysqld   确认 MySQL 自启动

mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off   如果 2--5 on 的状态就 OK

# /etc/rc.d/init.d/mysqld start   启动 MySQL 服务

 

MySQL 初始环境设定

 

MySQL root 用户设置密码

# mysql -u root   root 用户登录 MySQL 服务器

 

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2 to server version: 4.1.20

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

 

mysql> select user,host,password from mysql.user;   查看用户信息

4 rows in set (0.00 sec)

 

mysql> set password for root@localhost=password(' 在这里填入 root 密码 ');   设置 root 密码

Query OK, 0 rows affected (0.01 sec)

mysql> set password for root@'localhost'=password(' 在这里填入 root 密码 ');   设置 root 密码

Query OK, 0 rows affected (0.01 sec)

mysql> select user,host,password from mysql.user;   查看用户信息

4 rows in set (0.01 sec)

mysql> exit   退出 MySQL 服务器

Bye

然后,测试一下 root 密码有没有生效。

# mysql -u root   通过空密码用 root 登录

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)   出现此错误信息说明密码设置成功

# mysql -u root -h localhost   通过空密码用 root 登录

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)   出现此错误信息说明密码设置成功

# mysql -u root -p   通过密码用 root 登录

Enter password:   在这里输入密码

mysql> exit

Bye

 

删除测试用数据库

[root@sample ~]# mysql -u root -p   通过密码用 root 登录

Enter password:   在这里输入密码

mysql> show databases;   查看系统已存在的数据库

mysql> drop database test;   删除名为 test 的空数据库

Query OK, 0 rows affected (0.07 sec)

mysql> show databases;   查看系统已存在的数据库

mysql> exit   退出 MySQL 服务器

Bye

 

测试 MySQL

# mysql -u root -p   通过密码用 root 登录

Enter password:   在这里输入密码

mysql> grant all privileges on test.* to juwang@localhost identified by ' 在这里定义密码 ';   建立对 test 数据库有完全操作权限的名为 centospub 的用户

Query OK, 0 rows affected (0.03 sec)

mysql> select user from mysql.user where user='juwang';   确认 juwang 用户的存在与否

mysql> exit   退出 MySQL 服务器

Bye

 

# mysql -u juwang -p   用新建立的 juwang 用户登录 MySQL 服务器

Enter password:   在这里输入密码

 

mysql> create database test;   建立名为 test 的数据库

Query OK, 1 row affected (0.00 sec)

mysql> show databases;   查看系统已存在的数据库

mysql> use test   连接到数据库

Database changed

mysql> create table test(num int, name varchar(50));   在数据库中建立表

Query OK, 0 rows affected (0.03 sec)

mysql> show tables;   查看数据库中已存在的表

mysql> insert into test values(1,'Hello World!');   插入一个值到表中

Query OK, 1 row affected (0.02 sec)

mysql> select * from test;   查看数据库中的表的信息

mysql> update test set name='Hello Everyone!';   更新表的信息,赋予新的值

Query OK, 1 row affected (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 0

mysql> select * from test;   查看数据库中的表的信息

mysql> delete from test where num=1;   删除表内的值

Query OK, 1 row affected (0.00 sec)

mysql> select * from test;   确认删除结果

Empty set (0.01 sec)

mysql> drop table test;   删除表

Query OK, 0 rows affected (0.01 sec)

mysql> show tables;   查看表信息

Empty set (0.00 sec)   确认表已被删除

mysql> drop database test;   删除名为 test 的数据库

Query OK, 0 rows affected (0.01 sec)

mysql> show databases;   查看已存在的数据库

Empty set (0.01 sec)   确认 test 数据库已被删除(这里非 root 用户的关系,看不到名为 mysql 的数据库)

mysql> exit   退出 MySQL 服务器

Bye

删除测试用过的遗留用户。

# mysql -u root -p   通过密码用 root 登录

Enter password:   在这里输入密码

mysql> revoke all privileges on *.* from juwang@localhost;   取消 centospub 用户对数据库的操作权限

Query OK, 0 rows affected (0.00 sec)

mysql> delete from mysql.user where user='juwang' and host='localhost';   删除 juwang 用户

Query OK, 1 row affected (0.01 sec)

mysql> select user from mysql.user where user=’juwang’;   查找用户 juwang ,确认已删除与否

Empty set (0.01 sec)   确认 centospub 用户已不存在

mysql> flush privileges;   刷新,使以上操作生效

Query OK, 0 rows affected (0.01 sec)

mysql> exit

Bye

2)安装方法二(rpm安装)
 以Redhat5为例:
先安装:rpm  -ivh  perl-DBI-1.52-1.fc6.i386.rpm
然后装:rpm  -ivh  MySQL-server-community-5.0.67-0.rhel5.i386.rpm
最后装:rpm  -ivh  MySQL-clinet-community-5.0.67-0.rhel5.i386.rpm

 

3)安装方法三:安装二制包

1 )增加mysql用户和组

groupadd  mysql

useradd  -g  mysql  mysql

2 )解压二进制安装包,假设在/ home /mysql ,然后创建符号链接mysql

cd  /home/mysql

tar  -zxvf  /home/mysql/mysql-VERSION-OS.tar.gz

ln  -s  mysql-VERSION-OS  mysql

3 )在数据目录下创建系统数据库和系统表

cd  mysql

scripts/myssql_install_db  --user=mysql

4 )设置目录权限,将data目录owner改为mysql,其他目录和文件为root

chown  -R  root:mysql

chown  -R  mysql:mysql  data

5 )启动mysql

bin/mysqld_safe  --user=mysql  &

4)安装方法四:安装源码包

1 )增加mysql用户和组

groupadd  mysql

useradd  -g mysql  mysql

2 )解压文件mysql-VERSION.tar.gz,并进入解压后的目录;

gunzip  <  mysql-VERSION.tar.gz

cd  mysql-VERSION

3 )用configure工具来编译源码,可选择很多编译参数;

./configure  --prefix=/usr/local/mysql

make

make  install

4 )选择一个MySQL自带的样例配置文件,并CP/etc文件夹下并改变my.cnf

cp  support-files/my-medium.cnf   /etc/my.cnf

5 )在数据目录下创建系统数据库和系统表的操作

cd  /usr/local/mysql

bin/mysql_install_db user=mysql

6 )设置目录权限将var目录owner改为mysql,其他目录和文件为root.

chown R  root

chown R  mysql  var

chgrp  -R  mysql

7 )启动MySQL

bin/mysqld_safe  --user=mysql  &

 

删除匿名用户:

mysql>delete  from  user  where  user= ’’ ;

mysql>update  user  set  password=password( juwang )  where  user= root ;

mysql>flush privileges;

mysql>select 

注:/var/lib/mysq    //MySQL数据文件存放位置