#####################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*
安装前:注:之前安装过MySQL或者有残留,请查看:CentOS下MySQL的彻底卸载
注:遇到问题请查看:CentOS7安装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:
1:下载mysql安装包(全):
http://mysql.mirrors.pair.com/Downloads/
http://ftp.kaist.ac.kr/mysql/Downloads/ (推荐)
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
安装服务器遇到错误和警告:CentOS7安装MySQL冲突和问题解决小结
问题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
……