MySQL安装与配置(常规)

1)安装方法一:

安装 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 �C user=mysql
6 )设置目录权限将var目录owner改为mysql,其他目录和文件为root.
chown �C R  root
chown �C 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数据文件存放位置

你可能感兴趣的:(数据库,mysql,安装,配置,休闲)