如何在CentOS 7上安装MySQL
来源:互联网 发布:淘宝950轮播图片特效 编辑:程序博客网 时间:2024/05/19 02:19
如何在CentOS 7上安装MySQL
更新 由Linode
查看项目 | 查看文件 | 编辑文件
MySQL是一个流行的数据库管理系统,用于Web和服务器应用程序。但是,MySQL不再位于CentOS的存储库,MariaDB已经成为默认的数据库系统。MariaDB被认为是MySQL的直接替代品,如果你只需要一个数据库系统就足够了。请参阅我们在CentOS 7指南中的MariaDB以获取安装说明。
如果您更喜欢MySQL,本指南将介绍如何在运行CentOS 7的Linode上进行安装,配置和管理。
大型MySQL数据库可能需要大量的内存。出于这个原因,我们建议使用高内存Linode进行这样的设置。
注意本指南是为非root用户编写的。需要提升特权的命令前缀为sudo
。如果您不熟悉该sudo
命令,可以查看我们的用户和组指南。
在你开始之前
确保您已经按照入门和保护您的服务器指南操作,并设置了Linode的主机名。
要检查你的主机名运行:
hostnamehostname -f
第一个命令应显示您的简短主机名,第二个命令应显示您的完全限定的域名(FQDN)。
更新您的系统:
sudo yum update
您将需要
wget
完成本指南。它可以安装如下:yum install wget
安装MySQL
MySQL必须从社区存储库安装。
下载并添加存储库,然后更新。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpmsudo rpm -ivh mysql-community-release-el7-5.noarch.rpmyum update
照常安装MySQL并启动服务。在安装过程中,系统会询问您是否要接受.rpm文件的GPG验证结果。如果没有错误或不匹配,请输入
y
。sudo yum install mysql-serversudo systemctl start mysqld
MySQL将默认绑定到本地主机(127.0.0.1)。请参考我们的MySQL远程访问指南,了解如何使用SSH连接到您的数据库。
注意允许在公共IP上不受限制地访问MySQL,但可以通过修改bind-address
参数来更改它监听的地址/etc/my.cnf
。如果您决定将MySQL绑定到您的公共IP地址,则应该实施仅允许来自特定IP地址的连接的防火墙规则。
加强MySQL服务器
运行
mysql_secure_installation
脚本来解决默认MySQL安装中的一些安全问题。sudo mysql_secure_installation
您将可以选择更改MySQL根密码,删除匿名用户帐户,在本地主机外禁用root登录,并删除测试数据库。建议您回答yes
这些选项。您可以阅读MySQL参考手册中有关脚本的更多信息。
使用MySQL
与MySQL交互的标准工具是mysql
与mysql-server
包一起安装的客户端。MySQL客户端通过终端使用。
根登录
以root用户身份登录到MySQL:
mysql -u root -p
出现提示时,输入在运行mysql_secure_installation脚本时分配的根密码。
然后您将看到一个欢迎标题和MySQL提示符,如下所示:
mysql>
要为MySQL提示符生成命令列表,请输入
\h
。你会看到:List of all MySQL commands:Note that all text commands must be first on line and end with ';'? (\?) Synonym for `help'.clear (\c) Clear command.connect (\r) Reconnect to the server. Optional arguments are db and host.delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter.edit (\e) Edit command with $EDITOR.ego (\G) Send command to mysql server, display result vertically.exit (\q) Exit mysql. Same as quit.go (\g) Send command to mysql server.help (\h) Display this help.nopager (\n) Disable pager, print to stdout.notee (\t) Don't write into outfile.pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.print (\p) Print current command.prompt (\R) Change your mysql prompt.quit (\q) Quit mysql.rehash (\#) Rebuild completion hash.source (\.) Execute an SQL script file. Takes a file name as an argument.status (\s) Get status information from the server.system (\!) Execute a system shell command.tee (\T) Set outfile [to_outfile]. Append everything into given outfile.use (\u) Use another database. Takes database name as argument.charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.warnings (\W) Show warnings after every statement.nowarning (\w) Don't show warnings after every statement.For server side help, type 'help contents'mysql>
创建一个新的MySQL用户和数据库
在下面的例子中,
testdb
是数据库的名称,testuser
是用户,password
是用户的密码。create database testdb;create user 'testuser'@'localhost' identified by 'password';grant all on testdb.* to 'testuser' identified by 'password';
您可以通过在分配数据库权限的同时创建用户来缩短此过程:
create database testdb;grant all on testdb.* to 'testuser' identified by 'password';
然后退出MySQL。
exit
创建一个示例表
作为重新登录
testuser
。mysql -u testuser -p
创建一个名为customers的示例表。这将创建一个表格,其中包含一个类型为INT的客户ID字段(用于新记录的自动递增,用作主键)以及用于存储客户名称的两个字段。
use testdb;create table customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
然后退出MySQL。
exit
重置MySQL根密码
如果你忘记你的root密码,可以重置。
停止当前的MySQL服务器实例,然后用一个选项重新启动它,不要求输入密码。
sudo systemctl stop mysqldsudo mysqld_safe --skip-grant-tables &
用MySQL根帐户重新连接到MySQL服务器。
mysql -u root
使用以下命令重置root的密码。用
password
强密码替换。use mysql;update user SET PASSWORD=PASSWORD("password") WHERE USER='root';flush privileges;exit
然后重新启动MySQL。
sudo systemctl start mysqld
调整MySQL
MySQL Tuner是一个Perl脚本,连接到正在运行的MySQL实例,并根据工作负载提供配置建议。理想情况下,在运行调谐器之前,MySQL实例至少应运行24小时。实例运行的时间越长,MySQL调谐器就会给出更好的建议。
下载MySQL调谐器到您的主目录。
wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl
运行它:
perl ./mysqltuner.pl
您将被要求提供MySQL root用户的名字和密码。输出将显示两个感兴趣的领域:一般建议和变量进行调整。
MySQL Tuner是优化MySQL服务器的一个很好的起点,但是对Linode上使用MySQL的应用程序进行额外的配置研究是非常谨慎的。
更多信息
有关此主题的更多信息,您可能希望查阅以下资源。尽管提供这些内容是希望它们有用,但请注意,我们不能保证外部托管材料的准确性和及时性。
- MySQL 5.6参考手册
- PHP MySQL手册
- DBD :: mysql的Perl DBI示例
- MySQLdb用户指南
- MySQL调谐器教程
也可以看看
- 如何在CentOS 6上安装MySQL
- 如何在Debian 8上安装MySQL
- 如何在Debian 7上安装MySQL
- 如何在CentOS 7上安装MariaDB
- 在Ubuntu 14.04上安装MySQL
本指南在CC BY-ND 4.0许可下发布。
- 如何在CentOS 7上安装MySQL
- 如何在CentOS 7上安装MySQL
- 如何在CentOS 7上安装MySQL
- 在centos 7 上安装mysql
- 如何在 CentOS 7 上安装 Docker
- 如何在 CentOS 7 上安装 Docker
- 如何在CentOS 7上安装Nginx
- 在CentOS上安装MySQL
- 在CentOS上安装Mysql
- mysql 在 centos 上安装
- 如何在CentOS 7上安装Nginx,MySQL,PHP(LEMP)堆栈
- 快速在CentOS上安装MySQL数据库
- 在Linux CentOS上安装mysql
- 在CENTOS上安装MYSQL服务器
- [Linux]在CentOS 6.5上安装MySQL
- 在CENTOS上安装MYSQL服务器
- MySQL源码在centos上安装
- CentOS 7上安装MySQL
- A New Representation of Skeleton Sequences for 3D Action Recognition
- SpringBoot定时任务
- ORACLE触发器详解
- RabbitMQ入门教程(十五):普通集群和镜像集群
- Linux下MySQL数据库常用基本操作
- 如何在CentOS 7上安装MySQL
- Shell脚本定时清理Postgres数据库中历史数据
- Ionic使用
- android:layout_gravity和android:gravity的区别
- babel-preset-es2015安装
- Oracle的账户信息
- 数据结构实验之图论八:欧拉回路
- Android SDK下载安装及配置教程
- PLA