bitscn.com安装mysql。
[root@sample ~]# yum -y install mysql-server ← 安装mysql
[root@sample ~]# yum -y install php-mysql ← 安装php-mysql
配置mysql
[root@sample ~]#vim /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数据库的配置文件末尾添加:
[mysql]
default-character-set = utf8
启动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服务
initializing mysql database: [ ok ]
starting mysql: [ ok ]
mysql初始环境设定
[1]为mysql的root用户设置密码
mysql在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置mysql的root密码。
[root@sample ~]# 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; ← 查看用户信息
+------+------------------------------+---------------+
| user | host | password |
+------+------------------------------+---------------+
| root | localhost | | ← root密码为空
| root | sample.centospub.com | | ← root密码为空
| | sample.centospub.com | |
| | localhost | |
|root | % |xxx |
| | | |
+------+------------------------------+---------------+
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@'sample.centospub.com'=password(' 在这里填入root密码'); ← 设置root密码
query ok, 0 rows affected (0.01 sec)只有设置了这个才可以,才可以通过数据库来安装网址
mysql> set password for root@'xxx'=password('xxx' ); ← 设置root密码
query ok, 0 rows affected (0.01 sec)
mysql> select user,host,password from mysql.user; ← 查看用户信息
+------+--------------------------------+--------------------------+
| user | host| password |
+------+--------------------------------+--------------------------+
| root | localhost| 19b68057189b027f | ← root密码被设置
| root | sample.centospub.com | 19b68057189b027f | ← root密码被设置
| | sample.centospub.com | |
| | localhost| |
+------+--------------------------------+--------------------------+
4 rows in set (0.01 sec)
mysql> exit ← 退出mysql服务器
bye
然后,测试一下root密码有没有生效。
[root@sample ~]# mysql -u root ← 通过空密码用root登录
error 1045 (28000): access denied for user 'root'@'localhost' (using password: no) ← 出现此错误信息说明密码设置成功
[root@localhost ~]# mysql -u root -h sample.centospub.com ← 通过空密码用root登录
error 1045 (28000): access denied for user 'root'@'localhost' (using password: no) ← 出现此错误信息说明密码设置成功
[root@sample ~]#mysql -u root -p ← 通过密码用root登录
enter password: ← 在这里输入密码
welcome to the mysql monitor. commands end with ; or /g. ← 确认用密码能够成功登录
your mysql connection id is 5 to server version: 4.1.20
type 'help;' or '/h' for help. type '/c' to clear the buffer.
mysql> exit
bye
[root@sample ~]# mysql -u root -h sample.centospub.com -p ← 通过密码用root登录
enter password: ← 在这里输入密码
welcome to the mysql monitor. commands end with ; or /g. ← 确认用密码能够成功登录
your mysql connection id is 6 to server version: 4.1.20
type 'help;' or '/h' for help. type '/c' to clear the buffer.
mysql> exit ← 退出mysql服务器
bye
[2] 删除匿名用户
在mysql刚刚被安装后,存在用户名、密码为空的用户。这使得数据库服务器有无需密码被登录的可能性。为消除隐患,将匿名用户删除。
[root@sample ~]# mysql -u root -p ← 通过密码用root登录
enter password: ← 在这里输入密码
welcome to the mysql monitor. commands end with ; or /g.
your mysql connection id is 7 to server version: 4.1.20
type 'help;' or '/h' for help. type '/c' to clear the buffer.
mysql> select user,host from mysql.user; ← 查看用户信息
+------+----------------------------+
| user | host |
+------+----------------------------+
| | localhost |
| root | localhost |
| | sample.centospub.com |
| root | sample.centospub.com |
+------+----------------------------+
4 rows in set (0.02 sec)
mysql> delete from mysql.user where user=''; ← 删除匿名用户
query ok, 2 rows affected (0.17 sec)
mysql> select user,host from mysql.user; ← 查看用户信息
+------+----------------------------+
| user | host |
+------+----------------------------+
| root | localhost|
| root | sample.centospub.com |
+------+----------------------------+
2 rows in set (0.00 sec)
mysql> exit ← 退出mysql服务器
bye
好了,下面都不是必须的了!
测试mysql
[root@sample ~]# mysql -u root -p ← 通过密码用root登录
enter password: ← 在这里输入密码 www.jbxue.com
welcome to the mysql monitor. commands end with ; or /g.
your mysql connection id is 9 to server version: 4.1.20
type 'help;' or '/h' for help. type '/c' to clear the buffer.
mysql> grant all privileges on test.* to centospub@localhost identified by '在这里定义密码'; ← 建立对test数据库有完全操
作权限的名为centospub的用户
query ok, 0 rows affected (0.03 sec)
mysql> select user from mysql.user where user='centospub'; ← 确认centospub用户的存在与否
+---------+
| user |
+---------+
| centospub | ← 确认centospub已经被建立
+---------+
1 row in set (0.01 sec)
mysql> exit ← 退出mysql服务器
bye
[root@sample ~]# mysql -u centospub -p ← 用新建立的centospub用户登录mysql服务器
enter password: ← 在这里输入密码
welcome to the mysql monitor. commands end with ; or /g.
your mysql connection id is 10 to server version: 4.1.20
type 'help;' or '/h' for help. type '/c' to clear the buffer.
mysql> create database test; ← 建立名为test的数据库
query ok, 1 row affected (0.00 sec)
mysql> show databases; ← 查看系统已存在的数据库
+-------------+
| database |
+-------------+
| test |
+-------------+
1 row in set (0.00 sec)
mysql> use test ← 连接到数据库 www.jbxue.com
database changed
mysql> create table test(num int, name varchar(50)); ← 在数据库中建立表
query ok, 0 rows affected (0.03 sec)
mysql> show tables; ← 查看数据库中已存在的表
+-------------------+
| tables_in_test |
+-------------------+
| test |
+-------------------+
1 row in set (0.01 sec)
mysql> insert into test values(1,'hello world!'); ← 插入一个值到表中
query ok, 1 row affected (0.02 sec)
mysql> select * from test; ← 查看数据库中的表的信息
+------+-------------------+
| num | name |
+------+-------------------+
| 1 | hello world! |
+------+-------------------+
1 row in set (0.00 sec)
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; ← 查看数据库中的表的信息
+------+----------------------+
| num | name |
+------+----------------------+
| 1 | hello everyone! | ← 确认被更新到新的值
+------+----------------------+
1 row in set (0.01 sec)
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; ← 查看表信息 www.jbxue.com
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
然后,删除测试用过的遗留用户。
[root@sample ~]# mysql -u root -p ← 通过密码用root登录
enter password: ← 在这里输入密码
welcome to the mysql monitor. commands end with ; or /g.
your mysql connection id is 12 to server version: 4.1.20
type 'help;' or '/h' for help. type '/c' to clear the buffer.
mysql> revoke all privileges on *.* from centospub@localhost ; ← 取消centospub用户对数据库的操作权限
query ok, 0 rows affected (0.00 sec)
mysql> delete from mysql.user where user='centospub' and host='localhost'; ← 删除centospub用户
query ok, 1 row affected (0.01 sec)
mysql> select user from mysql.user where user='centospub'; ← 查找用户centospub,确认已删除与否
empty set (0.01 sec) ← 确认centospub用户已不存在
mysql> flush privileges; ← 刷新,使以上操作生效
query ok, 0 rows affected (0.01 sec)
mysql> exit
bye
[root@sample ~]# /etc/rc.d/init.d/httpd restart ← 重新启动http服务
stopping httpd: [ ok ]
starting httpd: [ ok ]
bitscn.com
