这里我们所说的安装 mysql 实际上是指安装 mysql-server ,就是mysql的服务端,mysql 客户端一般在 我们的系统里已经安装好了,并不需要再次安装了。不过我们也可以在安装 mysql-server 时重新安装 mysql 客户端
使用yum命令安装mysql
使用命令 yum list | grep mysql
查看 yum
上可用的 mysql 数据库版本。
yum list | grep mysql
yum list mysql-server
使用 yum install mysql-server
安装mysql服务端
➜ ~ yum install mysql-server
...此处省略一万字
总下载量:12 M
确定吗?[y/N]:y
下载软件包:
(1/5): mysql-5.1.73-7.el6.i686.rpm | 904 kB 00:00
(2/5): mysql-libs-5.1.73-7.el6.i686.rpm | 1.2 MB 00:00
(3/5): mysql-server-5.1.73-7.el6.i686.rpm | 8.8 MB 00:00
(4/5): perl-DBD-MySQL-4.013-3.el6.i686.rpm | 134 kB 00:00
(5/5): perl-DBI-1.609-4.el6.i686.rpm | 705 kB 00:00
-------------------------------------------------------------------------
总计 22 MB/s | 12 MB 00:00
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
正在升级 : mysql-libs-5.1.73-7.el6.i686 1/6
正在安装 : perl-DBI-1.609-4.el6.i686 2/6
正在安装 : perl-DBD-MySQL-4.013-3.el6.i686 3/6
正在安装 : mysql-5.1.73-7.el6.i686 4/6
正在安装 : mysql-server-5.1.73-7.el6.i686 5/6
清理 : mysql-libs-5.1.73-5.el6_6.i686 6/6
Verifying : perl-DBD-MySQL-4.013-3.el6.i686 1/6
Verifying : mysql-server-5.1.73-7.el6.i686 2/6
Verifying : perl-DBI-1.609-4.el6.i686 3/6
Verifying : mysql-libs-5.1.73-7.el6.i686 4/6
Verifying : mysql-5.1.73-7.el6.i686 5/6
Verifying : mysql-libs-5.1.73-5.el6_6.i686 6/6
已安装:
mysql-server.i686 0:5.1.73-7.el6
作为依赖被安装:
mysql.i686 0:5.1.73-7.el6 perl-DBD-MySQL.i686 0:4.013-3.el6
perl-DBI.i686 0:1.609-4.el6
作为依赖被升级:
mysql-libs.i686 0:5.1.73-7.el6
完毕!
到这里就安装完成了
启动 mysql 服务
当我们第一次启动 mysql 数据库时,会进行一系列的初始化配置,输出如下内容
➜ ~ service mysqld start
Initializing MySQL database: Installing MySQL system tables...
OK
Filling help tables...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h VM_176_3_centos password 'new-password'
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/bin/mysqlbug script!
[ OK ]
Starting mysqld: [ OK ]
这时, mysql 数据库就启动成功了,第二次启动数据库的时候 就不会再输出这么多内容了。
重启 mysql 数据库
重启数据库可以使用以下命令:
➜ ~ service mysqld restart
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]
设置开机自启
数据库启动成功后,设置 mysql 开机自启动
➜ ~ chkconfig mysqld on
可以通过 chkconfig --list | grep mysql
命令查看 mysql 数据库是否是开机自启动
➜ ~ chkconfig --list | grep mysql
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
注意:chkconfig --list
可以查看服务器中 所有服务的自启动状态
设置 mysql 的密码
mysql数据库安装完以后只有一个root管理员账号,但是此时的root账号还没有为其设置密码,这时回头看一下在第一次启动mysql服务时,输出的一大段信息中,我们看到有这样一行信息 :
/usr/bin/mysqladmin -u root password 'new-password' // 为root账号设置密码
所以我们可以通过 该命令来给我们的root账号设置密码(注意:这个root账号是mysql的root账号,非Linux的root账号)
➜ ~ mysqladmin -u root password '123456' // 通过该命令给root账号设置密码为 123456
然后就可以通过 mysql -u root -p
命令来登录 mysql 数据库了
➜ ~ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.00 sec)
mysql> exit;
Bye
查看安装好的 mysql-server 版本
使用rpm -qi mysql-server
命令查看安装好的 mysql-server 版本信息
➜ ~ rpm -qi mysql-server
Name : mysql-server Relocations: (not relocatable)
Version : 5.1.73 Vendor: CentOS
Release : 7.el6 Build Date: 2016年05月11日 星期三 14时05分53秒
Install Date: 2016年10月08日 星期六 14时49分09秒 Build Host: worker1.bsys.centos.org
Group : Applications/Databases Source RPM: mysql-5.1.73-7.el6.src.rpm
Size : 25688915 License: GPLv2 with exceptions
Signature : RSA/SHA1, 2016年05月12日 星期四 18时46分25秒, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem <http://bugs.centos.org>
URL : http://www.mysql.com
Summary : The MySQL server and related files
Description :
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
client/server implementation consisting of a server daemon (mysqld)
and many different client programs and libraries. This package contains
the MySQL server and some accompanying files and directories.
卸载 mysql mysql-server
我们可以通过如下命令来查看我们的系统上是否 安装了 mysql
➜ ~ rpm -qa | grep mysql
mysql-5.1.73-7.el6.i686
mysql-libs-5.1.73-7.el6.i686
mysql-server-5.1.73-7.el6.i686
通过 rpm -e
命令 或者 rpm -e --nodeps
命令来卸载掉
➜ ~ rpm -qa | grep mysql
mysql-5.1.73-7.el6.i686
mysql-libs-5.1.73-7.el6.i686
mysql-server-5.1.73-7.el6.i686
➜ ~ rpm -e mysql
error: Failed dependencies:
mysql = 5.1.73-7.el6 is needed by (installed) mysql-server-5.1.73-7.el6.i686
➜ ~ rpm -e --nodeps mysql
➜ ~ rpm -qa | grep mysql
mysql-libs-5.1.73-7.el6.i686
mysql-server-5.1.73-7.el6.i686
如上面的所示,当执行 rpm -e mysql
时会因为依赖关系 而出现错误,所以可以使用 rpm -e --nodeps mysql
来强制卸载,执行完之后 再查看安装的 mysql
发现少了 mysql-5.1.73-7.el6.i686
。
如果想全部卸载,再次执行
➜ ~ rpm -e --nodeps mysql-libs
➜ ~ rpm -e --nodeps mysql-server
即可。
mysql 的配置文件
mysql 的配置文件 保存在 /etc/my.cnf
中
我们可以看一下 内容:
➜ ~ cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
mysql 的数据库文件
mysql 的数据库文件存放路径为:/var/lib/mysql
➜ ~ ls -l /var/lib/mysql
总用量 20528
-rw-rw---- 1 mysql mysql 10485760 10月 8 15:11 ibdata1
-rw-rw---- 1 mysql mysql 5242880 10月 8 15:11 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 10月 8 14:50 ib_logfile1
drwx------ 2 mysql mysql 4096 10月 8 14:49 mysql
srwxrwxrwx 1 mysql mysql 0 10月 8 15:11 mysql.sock
drwx------ 2 mysql mysql 4096 10月 8 14:49 test
mysql 的日志输出文件
mysql数据库的日志输出存放位置在 /var/log
这个目录下
➜ ~ ls /var/log
anaconda.ifcfg.log anaconda.yum.log dmesg messages spooler
anaconda.log audit dmesg.old mysqld.log tallylog
anaconda.program.log boot.log dracut.log ntpstats wtmp
anaconda.storage.log btmp lastlog prelink yum.log
anaconda.syslog cron maillog secure
其中mysqld.log 这个文件就是mysql数据库产生的一些日志信息,通过查看该日志文件,我们可以从中获得很多信息
查看监听端口
mysql 的服务端口为 3306 ,我们可以使用 netstat -anp
命令来查看系统是否在监听这个端口
➜ ~ netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 3513/mysqld
设置 mysql 的远程访问
经过上面的设置后,还不能进行远程访问,连接的时候如下图所示:
解决办法
首先登录 mysql
数据库,然后使用命令grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
配置远程访问:
➜ ~ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql> exit;
Bye
➜ ~
再次测试,就OK了。
至此,所有的安装配置都完成了,如有纰漏,请及时告知,谢谢~~