#####################CentOS7安装MySQL数据库############################
查看linux系统信息:
CentOS-7-x86_64-DVD-1503-01.iso
MySQL-client-5.6.27-1.el6.x86_64.rpm
MySQL-devel-5.6.27-1.el6.x86_64.rpm
MySQL-server-5.6.27-1.el6.x86_64.rpm
[root@localhost etc]# cat /etc/issue
\S
Kernel \r on an \m
[root@localhost etc]# uname -a
Linux localhost.localdomain 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost etc]# cat /proc/version
Linux version 3.10.0-229.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Fri Mar 6 11:36:42 UTC 2015
1:检查是否安装MySQL:
方法1:
[root@localhost ~]# yum list installed mysql*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.opencas.cn
Error: No matching Packages to list
方法2:
[root@localhost ~]# rpm -qa | grep -i mysql
[root@localhost ~]#
2:查看yum服务器可下载mysql的版本信息:
[root@localhost ~]# yum list | grep mysql
3:看着yum服务器有没有合适的安装包:
[root@localhost ~]# yum list mysql*
4:yum安装MySQL:
#安装MySQL客户端
[root@localhost ~]# yum install mysql
#安装MySQL服务端
[root@localhost ~]# yum install mysql-server
#安装MySQL的库和头文件
[root@localhost ~]# yum install mysql-devel
5:rpm安装MySQL:
2:已准备安装rpm文件:
[root@localhost install-files]# pwd
/home/install-files
[root@localhost install-files]# ll
总用量 241452
-rw-r--r--. 1 root root 9106353 10月 8 23:15 apache-tomcat-8.0.24.tar.gz
-rw-r--r--. 1 root root 160084320 10月 8 23:17 jdk-8u60-linux-x64.rpm
-rw-r--r--. 1 root root 18596528 10月 11 13:24 MySQL-client-5.6.27-1.el6.x86_64.rpm
-rw-r--r--. 1 root root 3392620 10月 11 13:24 MySQL-devel-5.6.27-1.el6.x86_64.rpm
-rw-r--r--. 1 root root 55950588 10月 11 13:25 MySQL-server-5.6.27-1.el6.x86_64.rpm
-rw-r--r--. 1 root root 98362 10月 8 23:45 sshpass-1.05.tar.gz3
3:安装MySQL服务端:
[root@localhost install-files]# rpm -ivh MySQL-server-5.6.27-1.el6.x86_64.rpm --nosignature
Preparing... ################################# [100%]
Updating / installing...
1:MySQL-server-5.6.27-1.el6 ################################# [100%]
……………………
省略log,文章后备注附件。
检查:
[root@localhost bin]# mysql --version
mysql Ver 14.14 Distrib 5.6.27, for Linux (x86_64) using EditLine wrapper
问题1:file /usr/share/mysql/charsets/README from install of MySQL-server-5.6.27-1.el6.x86_64 conflicts with file from package mariadb-libs-1:5.5.41-2.el7_0.x86_64………
问题2:warning: MySQL-server-5.5.46-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
问题3:mysqld: unrecognized service
问题4:FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install_db: Data::Dumper
问题5:Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).
4:安装MySQL的库和头文件:
[root@localhost install-files]# rpm -ivh MySQL-devel-5.6.27-1.el6.x86_64.rpm --nosignature
Preparing... ################################# [100%]
Updating / installing...
1:MySQL-devel-5.6.27-1.el6 ################################# [100%]
5:安装MySQL客户端:
[root@localhost install-files]# rpm -ivh MySQL-client-5.6.27-1.el6.x86_64.rpm --nosignature
Preparing... ################################# [100%]
Updating / installing...
1:MySQL-client-5.6.27-1.el6 ################################# [100%]
检验:
[root@localhost bin]# find /usr/bin -name mysqladmin
/usr/bin/mysqladmin
[root@localhost bin]# find /usr/bin -name mysqldump
/usr/bin/mysqldump
注:以下操作rpm和yum安装完成之后操作为一致。
以上安装为默认路径安装,如果要设置路径rpm参数(--relocate,--badreloc):
mysql安装目录:
1.数据库目录
/var/lib/mysql/
2.配置文件
/usr/share/mysql(mysql.server命令及配置文件)
3.启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
4.相关命令
/usr/bin(mysqladmin mysqldump等命令)
注:1~3安装server安装后存在,4mysqladmin mysqldump在client安装后存在
6:启动和关闭mysql:
[root@localhost init.d]# pwd
/etc/rc.d/init.d
[root@localhost init.d]# ls
functions jexec mysql netconsole network README
[root@localhost install-files]# service mysql start
Starting MySQL.. SUCCESS!
[root@localhost install-files]# service mysql stop
Shutting down MySQL.. SUCCESS!
这个版本安装的mysql的启动脚本为mysql而非mysqld。
问题:
问题3:mysqld: unrecognized service
问题5:Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).
查看MySQL日志: cat /var/log/messages | grep mysqld
查看路径,检查文件是否缺少:/var/lib/mysql/
[root@localhost mysql]# ll
total 110620
-rw-rw----. 1 mysql mysql 56 Oct 11 23:20 auto.cnf
-rw-rw----. 1 mysql mysql 12582912 Oct 11 23:20 ibdata1
-rw-rw----. 1 mysql mysql 50331648 Oct 11 23:20 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Oct 11 23:19 ib_logfile1
-rw-r-----. 1 mysql root 5847 Oct 11 23:20 localhost.localdomain.err
drwx--x--x. 2 mysql mysql 4096 Oct 11 23:19 mysql
drwx------. 2 mysql mysql 4096 Oct 11 23:19 performance_schema
-rw-r--r--. 1 root root 111 Oct 11 23:19 RPM_UPGRADE_HISTORY
-rw-r--r--. 1 mysql mysql 111 Oct 11 23:19 RPM_UPGRADE_MARKER-LAST
drwxr-xr-x. 2 mysql mysql 6 Oct 11 23:19 test
备注附件:
[root@localhost install-files]# tar -xvf MySQL-5.6.22-1.linux_glibc2.5.x86_64.rpm-bundle.tar
MySQL-shared-compat-5.6.22-1.linux_glibc2.5.x86_64.rpm #RHEL兼容包
MySQL-client-5.6.22-1.linux_glibc2.5.x86_64.rpm #MySQL客户端程序
MySQL-shared-5.6.22-1.linux_glibc2.5.x86_64.rpm #MySQL的共享库
MySQL-server-5.6.22-1.linux_glibc2.5.x86_64.rpm #MySQL服务端程序
MySQL-test-5.6.22-1.linux_glibc2.5.x86_64.rpm #MySQL的测试组件
MySQL-devel-5.6.22-1.linux_glibc2.5.x86_64.rpm #MySQL的库和头文件
MySQL-embedded-5.6.22-1.linux_glibc2.5.x86_64.rpm #MySQL的嵌入式程序
备注安装成功日志:
2015-10-11 23:19:40 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-10-11 23:19:40 0 [Note] /usr/sbin/mysqld (mysqld 5.6.27) starting as process 3168 ...
2015-10-11 23:19:40 3168 [Note] InnoDB: Using atomics to ref count buffer pool pages
2015-10-11 23:19:40 3168 [Note] InnoDB: The InnoDB memory heap is disabled
2015-10-11 23:19:40 3168 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2015-10-11 23:19:40 3168 [Note] InnoDB: Memory barrier is not used
2015-10-11 23:19:40 3168 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-10-11 23:19:40 3168 [Note] InnoDB: Using Linux native AIO
2015-10-11 23:19:40 3168 [Note] InnoDB: Using CPU crc32 instructions
2015-10-11 23:19:40 3168 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2015-10-11 23:19:40 3168 [Note] InnoDB: Completed initialization of buffer pool
2015-10-11 23:19:40 3168 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
2015-10-11 23:19:40 3168 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB
2015-10-11 23:19:40 3168 [Note] InnoDB: Database physically writes the file full: wait...
2015-10-11 23:19:40 3168 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2015-10-11 23:19:41 3168 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2015-10-11 23:19:43 3168 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2015-10-11 23:19:43 3168 [Warning] InnoDB: New log files created, LSN=45781
2015-10-11 23:19:43 3168 [Note] InnoDB: Doublewrite buffer not found: creating new
2015-10-11 23:19:43 3168 [Note] InnoDB: Doublewrite buffer created
2015-10-11 23:19:43 3168 [Note] InnoDB: 128 rollback segment(s) are active.
2015-10-11 23:19:43 3168 [Warning] InnoDB: Creating foreign key constraint system tables.
2015-10-11 23:19:43 3168 [Note] InnoDB: Foreign key constraint system tables created
2015-10-11 23:19:43 3168 [Note] InnoDB: Creating tablespace and datafile system tables.
2015-10-11 23:19:43 3168 [Note] InnoDB: Tablespace and datafile system tables created.
2015-10-11 23:19:43 3168 [Note] InnoDB: Waiting for purge to start
2015-10-11 23:19:43 3168 [Note] InnoDB: 5.6.27 started; log sequence number 0
A random root password has been set. You will find it in '/root/.mysql_secret'.
2015-10-11 23:19:44 3168 [Note] Binlog end
2015-10-11 23:19:44 3168 [Note] InnoDB: FTS optimize thread exiting.
2015-10-11 23:19:44 3168 [Note] InnoDB: Starting shutdown...
2015-10-11 23:19:46 3168 [Note] InnoDB: Shutdown completed; log sequence number 1625977
2015-10-11 23:19:46 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-10-11 23:19:46 0 [Note] /usr/sbin/mysqld (mysqld 5.6.27) starting as process 3190 ...
2015-10-11 23:19:46 3190 [Note] InnoDB: Using atomics to ref count buffer pool pages
2015-10-11 23:19:46 3190 [Note] InnoDB: The InnoDB memory heap is disabled
2015-10-11 23:19:46 3190 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2015-10-11 23:19:46 3190 [Note] InnoDB: Memory barrier is not used
2015-10-11 23:19:46 3190 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-10-11 23:19:46 3190 [Note] InnoDB: Using Linux native AIO
2015-10-11 23:19:46 3190 [Note] InnoDB: Using CPU crc32 instructions
2015-10-11 23:19:46 3190 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2015-10-11 23:19:46 3190 [Note] InnoDB: Completed initialization of buffer pool
2015-10-11 23:19:46 3190 [Note] InnoDB: Highest supported file format is Barracuda.
2015-10-11 23:19:46 3190 [Note] InnoDB: 128 rollback segment(s) are active.
2015-10-11 23:19:46 3190 [Note] InnoDB: Waiting for purge to start
2015-10-11 23:19:46 3190 [Note] InnoDB: 5.6.27 started; log sequence number 1625977
2015-10-11 23:19:46 3190 [Note] Binlog end
2015-10-11 23:19:46 3190 [Note] InnoDB: FTS optimize thread exiting.
2015-10-11 23:19:46 3190 [Note] InnoDB: Starting shutdown...
2015-10-11 23:19:49 3190 [Note] InnoDB: Shutdown completed; log sequence number 1625987
A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER !
You will find that password in '/root/.mysql_secret'.
You must change that password on your first connect,
no other statement but 'SET PASSWORD' will be accepted.
See the manual for the semantics of the 'password expired' flag.
Also, the account for the anonymous user has been removed.
In addition, you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test database.
This is strongly recommended for production servers.
See the manual for more instructions.
Please report any problems at http://bugs.mysql.com/
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
New default config file was created as /usr/my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings
大概安装步骤:
[root@localhost install-files]# rpm -ivh MySQL-client-5.6.27-1.el6.x86_64.rpm --nosignature
……
[root@localhost install-files]# rpm -ivh MySQL-devel-5.6.27-1.el6.x86_64.rpm --nosignature
……
[root@localhost install-files]# yum remove mysql-libs
……
[root@localhost lib]# rm -rf /var/lib/mysql
……
[root@localhost install-files]# yum install -y perl-Module-Install.noarch
……
[root@localhost install-files]# rpm -ivh MySQL-server-5.6.27-1.el6.x86_64.rpm --nosignature
……