采用yum方式安装mysql

来源:互联网 发布:mac pdf怎么删除文字 编辑:程序博客网 时间:2024/04/29 21:42

[root@sample ~]# yum -y install mysql-server  ← 安装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).
添加新的规则,让MySQL的默认编码为UTF-8
default-character-set = utf8 ← 添加这一行
然后在配置文件的文尾填加如下语句:
[mysql]
default-character-set = utf8

启动MySQL服务

[root@sample ~]# chkconfig mysqld on  ← 设置MySQL服务随系统启动自启动
[root@sample ~]# chkconfig --list mysqld  ← 确认MySQL自启动 
mysqld 0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭  ← 如果2--5为on的状态就OK
[root@localhost ~]# /etc/init.d/mysqld start
初始化 MySQL 数据库: Installing MySQL system tables...


MySQL初始环境设定

[1]为MySQL的root用户设置密码
MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。
[root@sample ~]# mysql -u root  ← 用root用户登录MySQL服务器
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就可以直接登录数据库。要在my.cnf里加点东西

[client]
user=root
password=xxxx

要远程连接最好再另外创建个号,只要执行以下命令就行

//授予rat用户对所有库所有权限

mysql>grant all privileges on *.*  to 'rat'@'%' identified by 'tar';

mysql>grant all privileges on *.*  to 'rat'@'%' with grant option;

mysql>flush privileges;

发现没法连上,估计是防火墙挡住了,先把防火墙停了,
service iptables stop
测试没问题的话,再加上防火墙策略,然后把防火墙开起来

好了,下面都不是必须的了!
测试MySQL

原创粉丝点击