在阿里云的CentOS环境中安装配置MySQL的教程

时间:2021-05-23

1 常规错误的yum安装方法:

在前文中记述了CentOS 6.5系统中通过yum方式快速地搭建了LNMP环境,那么是否也能在CentOS 7或CentOS 7.1系统中依葫芦画瓢安装MySql5.6.24呢?答案是否定的。

[root@typecodes ~]# yum -y install mysql mysql-server mysql-devel.....................。....省略部分安装过程.........................。Installed: mariadb.x86_64 1:5.5.41-2.el7_0 mariadb-devel.x86_64 1:5.5.41-2.el7_0 Dependency Installed: keyutils-libs-devel.x86_64 0:1.5.8-3.el7 krb5-devel.x86_64 0:1.12.2-14.el7 libcom_err-devel.x86_64 0:1.42.9-7.el7 libselinux-devel.x86_64 0:2.2.2-6.el7 libsepol-devel.x86_64 0:2.1.9-3.el7 libverto-devel.x86_64 0:0.2.5-4.el7 openssl-devel.x86_64 1:1.0.1e-42.el7.4 pcre-devel.x86_64 0:8.32-14.el7 zlib-devel.x86_64 0:1.2.7-13.el7 Complete!

从上面的安装结果可以看出,没有安装mysql数据库,而是安装了mariadb数据!因为在CentOS 7和CentOS 7.1系统中,默认安装的mysql是它的分支mariadb。这里引用下百度百科关于mariadb的描述:

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
因此,下面这些正常的MySQL操作都是无效的:

#######无法把mysql服务加入系统启动[root@typecodes ~]# chkconfig mysqld onerror reading information on service mysqld: No such file or directory#######启动不了mysql[root@typecodes ~]# service mysqld startRedirecting to /bin/systemctl start mysqld.serviceFailed to issue method call: Unit mysqld.service failed to load: No such file or directory.#######没有安装mysql相关包[root@typecodes ~]# rpm -qa |grep mysqlphp-mysql-5.4.16-23.el7_0.3.x86_64[root@typecodes ~]#

2 正确的安装方法:

众所周知,Linux系统自带的repo是不会自动更新每个软件的最新版本(基本都是比较靠后的稳定版),所以无法通过yum方式安装MySQL的高级版本。所以我们需要先安装带有当前可用的mysql5系列社区版资源的rpm包。

#######安装rpm包[root@typecodes ~]# rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpmRetrieving http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpmPreparing... ################################# [100%]Updating / installing... 1:mysql-community-release-el7-5 ################################# [100%]

这时查看当前可用的mysql安装资源:

[root@typecodes ~]# yum repolist enabled | grep "mysql.*-community.*"mysql-connectors-community/x86_64 MySQL Connectors Community 14mysql-tools-community/x86_64 MySQL Tools Community 17mysql56-community/x86_64 MySQL 5.6 Community Server 139

从上面的列表可以看出, mysql56-community/x86_64 和 MySQL 5.6 Community Server 可以使用。

因此,我们就可以直接用yum方式安装了MySQL5.6版本了。

[root@typecodes ~]# yum -y install mysql-community-serverLoaded plugins: axelget, langpacksNo metadata available for baseNo metadata available for epelNo metadata available for extras(Failed to load module fastestmirror: No module named fastestmirror)repomd.xml | 2.5 kB 00:00:00 update mysql-connectors-community metadata successfully(Failed to load module fastestmirror: No module named fastestmirror)repomd.xml | 2.5 kB 00:00:00 update mysql-tools-community metadata successfully(Failed to load module fastestmirror: No module named fastestmirror)repomd.xml | 2.5 kB 00:00:00 update mysql56-community metadata successfullyNo metadata available for updatesmysql-connectors-community | 2.5 kB 00:00:00 mysql-tools-community | 2.5 kB 00:00:00 mysql56-community | 2.5 kB 00:00:00 (1/3): mysql-connectors-community/x86_64/primary_db | 7.3 kB 00:00:00 (2/3): mysql56-community/x86_64/primary_db | 83 kB 00:00:01 mysql-tools-community/x86_64/p FAILED ============================================== ] 19 kB/s | 92 kB 00:00:00 ETA http://repo.mysql.com/yum/mysql-tools-community/el/7/x86_64/repodata/3301d2eb425f300dec5a46c4201d08f2cf9232a6-primary.sqlite.bz2: [Errno 12] Timeout on http://repo.mysql.com/yum/mysql-tools-community/el/7/x86_64/repodata/3301d2eb425f300dec5a46c4201d08f2cf9232a6-primary.sqlite.bz2: (28, 'Operation too slow. Less than 1000 bytes/sec transferred the last 3 seconds')Trying other mirror.(3/3): mysql-tools-community/x86_64/primary_db | 15 kB 00:00:00 Resolving Dependencies--> Running transaction check---> Package mysql-community-server.x86_64 0:5.6.24-3.el7 will be installed--> Processing Dependency: mysql-community-common(x86-64) = 5.6.24-3.el7 for package: mysql-community-server-5.6.24-3.el7.x86_64--> Processing Dependency: mysql-community-client(x86-64) = 5.6.24-3.el7 for package: mysql-community-server-5.6.24-3.el7.x86_64--> Processing Dependency: perl(DBI) for package: mysql-community-server-5.6.24-3.el7.x86_64--> Running transaction check---> Package mariadb.x86_64 1:5.5.41-2.el7_0 will be obsoleted---> Package mysql-community-client.x86_64 0:5.6.24-3.el7 will be obsoleting--> Processing Dependency: mysql-community-libs(x86-64) = 5.6.24-3.el7 for package: mysql-community-client-5.6.24-3.el7.x86_64---> Package mysql-community-common.x86_64 0:5.6.24-3.el7 will be installed---> Package perl-DBI.x86_64 0:1.627-4.el7 will be installed--> Processing Dependency: perl(RPC::PlServer) >= 0.2001 for package: perl-DBI-1.627-4.el7.x86_64--> Processing Dependency: perl(RPC::PlClient) >= 0.2000 for package: perl-DBI-1.627-4.el7.x86_64--> Running transaction check---> Package mariadb-libs.x86_64 1:5.5.41-2.el7_0 will be obsoleted--> Processing Dependency: mariadb-libs(x86-64) = 1:5.5.41-2.el7_0 for package: 1:mariadb-devel-5.5.41-2.el7_0.x86_64---> Package mysql-community-libs.x86_64 0:5.6.24-3.el7 will be obsoleting---> Package perl-PlRPC.noarch 0:0.2020-14.el7 will be installed--> Processing Dependency: perl(Net::Daemon) >= 0.13 for package: perl-PlRPC-0.2020-14.el7.noarch--> Processing Dependency: perl(Net::Daemon::Test) for package: perl-PlRPC-0.2020-14.el7.noarch--> Processing Dependency: perl(Net::Daemon::Log) for package: perl-PlRPC-0.2020-14.el7.noarch--> Processing Dependency: perl(Compress::Zlib) for package: perl-PlRPC-0.2020-14.el7.noarch--> Running transaction check---> Package mariadb-devel.x86_64 1:5.5.41-2.el7_0 will be obsoleted---> Package mysql-community-devel.x86_64 0:5.6.24-3.el7 will be obsoleting---> Package perl-IO-Compress.noarch 0:2.061-2.el7 will be installed--> Processing Dependency: perl(Compress::Raw::Zlib) >= 2.061 for package: perl-IO-Compress-2.061-2.el7.noarch--> Processing Dependency: perl(Compress::Raw::Bzip2) >= 2.061 for package: perl-IO-Compress-2.061-2.el7.noarch---> Package perl-Net-Daemon.noarch 0:0.48-5.el7 will be installed--> Running transaction check---> Package perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7 will be installed---> Package perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7 will be installed--> Finished Dependency ResolutionDependencies Resolved======================================================================================================================================================================= Package Arch Version Repository Size=======================================================================================================================================================================Installing: mysql-community-client x86_64 5.6.24-3.el7 mysql56-community 19 M replacing mariadb.x86_64 1:5.5.41-2.el7_0 mysql-community-devel x86_64 5.6.24-3.el7 mysql56-community 3.4 M replacing mariadb-devel.x86_64 1:5.5.41-2.el7_0 mysql-community-libs x86_64 5.6.24-3.el7 mysql56-community 2.0 M replacing mariadb-libs.x86_64 1:5.5.41-2.el7_0 mysql-community-server x86_64 5.6.24-3.el7 mysql56-community 58 MInstalling for dependencies: mysql-community-common x86_64 5.6.24-3.el7 mysql56-community 256 k perl-Compress-Raw-Bzip2 x86_64 2.061-3.el7 base 32 k perl-Compress-Raw-Zlib x86_64 1:2.061-4.el7 base 57 k perl-DBI x86_64 1.627-4.el7 base 802 k perl-IO-Compress noarch 2.061-2.el7 base 260 k perl-Net-Daemon noarch 0.48-5.el7 base 51 k perl-PlRPC noarch 0.2020-14.el7 base 36 kTransaction Summary=======================================================================================================================================================================Install 4 Packages (+7 Dependent packages)Total download size: 83 MDownloading packages:mysql-community-devel-5.6.24-3.el7.x86_64.rpm | 3.4 MB 00:00:03 mysql-community-client-5.6.24-3.el7.x86_64.rpm | 19 MB 00:00:05 mysql-community-server-5.6.24-3.el7.x86_64.rpm | 58 MB 00:00:11 mysql-community-libs-5.6.24-3.el7.x86_64.rpm | 2.0 MB 00:00:02 perl-DBI-1.627-4.el7.x86_64.rpm | 0 B 00:00:01 ... perl-DBI-1.627-4.el7.x86_64.rpm | 802 kB 00:00:00 (1/6): perl-Compress-Raw-Zlib-2.061-4.el7.x86_64.rpm | 57 kB 00:00:00 (2/6): perl-Net-Daemon-0.48-5.el7.noarch.rpm | 51 kB 00:00:00 (3/6): perl-PlRPC-0.2020-14.el7.noarch.rpm | 36 kB 00:00:00 (4/6): perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64.rpm | 32 kB 00:00:00 (5/6): perl-IO-Compress-2.061-2.el7.noarch.rpm | 260 kB 00:00:00 warning: /var/cache/yum/x86_64/7/mysql56-community/packages/mysql-community-common-5.6.24-3.el7.x86_64.rpm: V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY 00:00:01 ETA Public key for mysql-community-common-5.6.24-3.el7.x86_64.rpm is not installed(6/6): mysql-community-common-5.6.24-3.el7.x86_64.rpm | 256 kB 00:00:01 -----------------------------------------------------------------------------------------------------------------------------------------------------------------------Total 388 kB/s | 692 kB 00:00:01 Retrieving key from file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysqlImporting GPG key 0x5072E1F5: Userid : "MySQL Release Engineering <mysql-build@oss.oracle.com>" Fingerprint: a4a9 4068 76fc bd3c 4567 70c8 8c71 8d3b 5072 e1f5 Package : mysql-community-release-el7-5.noarch (installed) From : file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysqlRunning transaction checkRunning transaction testTransaction test succeededRunning transactionWarning: RPMDB altered outside of yum. Installing : mysql-community-common-5.6.24-3.el7.x86_64 1/14 Installing : mysql-community-libs-5.6.24-3.el7.x86_64 2/14 Installing : mysql-community-client-5.6.24-3.el7.x86_64 3/14 Installing : perl-Net-Daemon-0.48-5.el7.noarch 4/14 Installing : 1:perl-Compress-Raw-Zlib-2.061-4.el7.x86_64 5/14 Installing : perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64 6/14 Installing : perl-IO-Compress-2.061-2.el7.noarch 7/14 Installing : perl-PlRPC-0.2020-14.el7.noarch 8/14 Installing : perl-DBI-1.627-4.el7.x86_64 9/14 Installing : mysql-community-server-5.6.24-3.el7.x86_64 10/14 Installing : mysql-community-devel-5.6.24-3.el7.x86_64 11/14 Erasing : 1:mariadb-devel-5.5.41-2.el7_0.x86_64 12/14 Erasing : 1:mariadb-5.5.41-2.el7_0.x86_64 13/14 Erasing : 1:mariadb-libs-5.5.41-2.el7_0.x86_64 14/14 Verifying : perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64 1/14 Verifying : mysql-community-common-5.6.24-3.el7.x86_64 2/14 Verifying : mysql-community-devel-5.6.24-3.el7.x86_64 3/14 Verifying : mysql-community-client-5.6.24-3.el7.x86_64 4/14 Verifying : perl-PlRPC-0.2020-14.el7.noarch 5/14 Verifying : mysql-community-server-5.6.24-3.el7.x86_64 6/14 Verifying : 1:perl-Compress-Raw-Zlib-2.061-4.el7.x86_64 7/14 Verifying : mysql-community-libs-5.6.24-3.el7.x86_64 8/14 Verifying : perl-Net-Daemon-0.48-5.el7.noarch 9/14 Verifying : perl-DBI-1.627-4.el7.x86_64 10/14 Verifying : perl-IO-Compress-2.061-2.el7.noarch 11/14 Verifying : 1:mariadb-5.5.41-2.el7_0.x86_64 12/14 Verifying : 1:mariadb-devel-5.5.41-2.el7_0.x86_64 13/14 Verifying : 1:mariadb-libs-5.5.41-2.el7_0.x86_64 14/14 Installed: mysql-community-client.x86_64 0:5.6.24-3.el7 mysql-community-devel.x86_64 0:5.6.24-3.el7 mysql-community-libs.x86_64 0:5.6.24-3.el7 mysql-community-server.x86_64 0:5.6.24-3.el7 Dependency Installed: mysql-community-common.x86_64 0:5.6.24-3.el7 perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7 perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7 perl-DBI.x86_64 0:1.627-4.el7 perl-IO-Compress.noarch 0:2.061-2.el7 perl-Net-Daemon.noarch 0:0.48-5.el7 perl-PlRPC.noarch 0:0.2020-14.el7 Replaced: mariadb.x86_64 1:5.5.41-2.el7_0 mariadb-devel.x86_64 1:5.5.41-2.el7_0 mariadb-libs.x86_64 1:5.5.41-2.el7_0 Complete!

3 MySQL安装完成后,进行相关配置

安装完MySQL后,需要进行一些基础配置工作:

#######安装成功后,将其加入开机启动[root@typecodes ~]# systemctl enable mysqld#######启动mysql服务进程[root@typecodes ~]# systemctl start mysqld#######配置mysql(设置密码等)[root@typecodes ~]# mysql_secure_installationNOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!In order to log into MySQL to secure it, we'll need the currentpassword for the root user. If you've just installed MySQL, andyou haven't set the root password yet, the password will be blank,so you should just press enter here.Enter current password for root (enter for none): OK, successfully used password, moving on...Setting the root password ensures that nobody can log into the MySQLroot user without the proper authorisation.Set root password? [Y/n] y [设置root用户密码]New password: Re-enter new password: Password updated successfully!Reloading privilege tables.. ... Success!By default, a MySQL installation has an anonymous user, allowing anyoneto log into MySQL without having to have a user account created forthem. This is intended only for testing, and to make the installationgo a bit smoother. You should remove them before moving into aproduction environment.Remove anonymous users? [Y/n] y [删除匿名用户] ... Success!Normally, root should only be allowed to connect from 'localhost'. Thisensures that someone cannot guess at the root password from the network.Disallow root login remotely? [Y/n] y [禁止root远程登录] ... Success!By default, MySQL comes with a database named 'test' that anyone canaccess. This is also intended only for testing, and should be removedbefore moving into a production environment.Remove test database and access to it? [Y/n] y [删除test数据库] - Dropping test database...ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist ... Failed! Not critical, keep moving... - Removing privileges on test database... ... Success!Reloading the privilege tables will ensure that all changes made so farwill take effect immediately.Reload privilege tables now? [Y/n] y [刷新权限] ... Success!All done! If you've completed all of the above steps, your MySQLinstallation should now be secure.Thanks for using MySQL!Cleaning up...

4.可能有效的MySQL配置优化
在原始配置文件 /etc/my.cnf 基础上,在 [mysqld] 节内增加配置参数。实际应用中,请按硬件及负载酌情修改。

#add by feng 120418 --------------------------#skip-lockingskip-name-resolveskip-external-lockingkey_buffer_size = 256M#table_cache = 3072table_open_cache = 3072read_buffer_size = 2Mread_rnd_buffer_size = 2Msort_buffer_size = 2Mmyisam_sort_buffer_size = 256Mthread_cache_size = 8query_cache_size= 512Mquery_cache_limit= 5Mtmp_table_size=1024Mmax_heap_table_size=3000Mmax_allowed_packet = 16Minnodb_buffer_pool_size = 512Minnodb_log_file_size = 512Minnodb_additional_mem_pool_size=512Minnodb_log_buffer_size=64Mmax_connections=2000max_user_connections=800join_buffer_size = 8Mopen_files_limit = 65535#tmpdir=/dev/shmmax_connect_errors=1000#add by feng 120418 end ---------------------

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章