MySQL 是世界上最流行的开源数据库。根据 DB-Engines的调查数据,MySQL 是第二受欢迎的数据库,仅次于 Oracle 数据库。MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如维基百科、Google和Facebook等网站。
下面我们介绍在Linux的Ubuntu系统下,安装和配置mysql。
安装
- 首先更新apt源
sudo apt update
- 下载mysql-server
sudo apt install mysql-server
- 查看mysql的状态
sudo service mysql status
上图说明当前mysql没有开启,可以通过如下命令开启
sudo service mysql start
再次查看状态:
可以看到当前mysql正在运行。
- 设置root的密码
第一次安装mysql后,我们可以需要为root设置一个密码
#进入mysql终端
sudo mysql
#设置root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
将password替换成相应的密码即可,这样下次就无法通过sudo mysql的方式登录了,如果仍使用会报错:
- 登录mysql
mysql -u root -p
输入刚刚设置的密码即可登录。
*如果想回到用sudo mysql的方式登录,可以使用如下命令:
ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
配置
MySQL的配置可以在配置文件中进行修改。在大多数Linux系统上,MySQL的配置文件通常位于/etc/mysql/my.cnf
或/etc/my.cnf
。
- 监听IP和端口
bind-address
选项用于指定MySQL服务器监听的IP地址。默认情况下,它设置为127.0.0.1
,表示仅监听本地回环地址。如果你希望MySQL服务器对外部网络可访问,可以将其设置为服务器的IP地址或0.0.0.0
。port
选项用于指定MySQL服务器监听的端口号,默认为3306。
可以在mysql的命令界面下,查看当前监听的IP和端口
如果想要修改,可以编辑/etc/mysql下的mysql.cnf文件:
#例如修改端口号为3307
[mysqld]
port=3307
之后重启mysql
service mysql restart
查看当前的端口号
可以看到成功修改为了3307。
这里在对一些其他的配置作简单介绍,具体的修改操作和上述修改端口号的操作基本一致。
- 数据目录
datadir
选项用于指定MySQL服务器存储数据的目录路径。默认情况下,它设置为/var/lib/mysql
- 日志文件设置
MySQL提供了多种类型的日志记录,如错误日志、查询日志和慢查询日志。可以使用log_error
、general_log
和slow_query_log
选项来启用和配置这些日志。
- 内存和缓存设置
innodb_buffer_pool_size
选项用于设置InnoDB存储引擎使用的缓冲池大小。它影响到InnoDB表的性能。key_buffer_size
选项用于设置MyISAM存储引擎使用的键缓冲区大小。
- 安全设置
skip-networking
选项用于禁止MySQL服务器通过网络连接。skip-name-resolve
选项可以禁用DNS解析,以提高连接速度和安全性。