MySQL是用的很多的关系型数据库。今天来分享一下安装,配置及其连接教程。这里以Debian服务器安装MySQL 8为例。
去下载页面下载linux版的mysql安装包。
下载注意安装之前必须完全卸载MariaDB,先执行:
sudo apt purge mariadb*然后下载了一个tar文件,解压你会发现解压出来了一堆deb文件,把这些文件全部上传到linux服务器的一个目录里,并cd命令进入那个目录,然后安装所有的deb文件:
sudo dpkg -i *.deb若安装后有错误信息,则执行:
sudo apt update sudo apt install -f期间会显示一个界面让你设置root密码,即数据库超级管理员root的密码,设置即可:
设置root密码输入密码,ok,然后重复输入密码确认之后会告知你mysql8用了新加密方式,ok即可:
告示然后会让你选择加密方式,有新加密方式和传统加密方式两种。这里需要说明的是如果选择新加密方式可能远程连接数据库时会报错,所以没特殊需要建议选择传统加密方式:
加密方式的选择这样就安装完成了!
mysql 8的配置文件在/etc/mysql/my.cnf,没有特殊需要一般不用修改。不过我们一般只需修改服务端的配置即可。服务端配置需要修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,打开这个文件可以看到:
# Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License, version 2.0, # as published by the Free Software Foundation. # # This program is also distributed with certain software (including # but not limited to OpenSSL) that is licensed under separate terms, # as designated in a particular file or component or in included license # documentation. The authors of MySQL hereby grant you an additional # permission to link the program and your derivative works with the # separately licensed software that they have included with MySQL. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License, version 2.0, for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # The MySQL Server configuration file. # # For explanations see # http://dev.mysql.com/doc/mysql/en/server-system-variables.html [mysqld] pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql log-error = /var/log/mysql/error.log里面设定了一些默认的数据库文件、日志文件位置,可自行修改。
上面[mysqld]表示一个配置组,即为服务端配置,这个配置组下面的四行配置依次代表:进程文件位置、socket文件位置、数据库存放文件夹和错误日志文件位置。
下面来说几个常用配置。
服务端的默认端口是3306,不过在这个文件这可以添加配置修改其端口,接着加入下列语句(在[mysqld]配置组):
port=自定义端口号然后就是字符集,建议改成utf8mb4,现在上面服务端配置组[mysqld]里面加入:
character-set-server=utf8mb4再修改/etc/mysql/my.cnf这个配置文件,加入[client]配置组(如果没有的话)并设置字符集,添加如下语句:
[client] default-character-set=utf8mb4修改为配置记得重启mysql服务(见下面3)。
还可以停止或者重启:
停止: service mysql stop 重启(修改完配置文件重启生效): service mysql restart安装完成,MySQL的服务端是默认开机自启动的,我们可以通过下列命令打开/关闭MySQL的开机自启动:
允许开机自启: systemctl enable mysql 禁用开机自启: systemctl disable mysql在服务器上面输入命令连接数据库:
mysql -u root -p然后输入管理员密码,就连接成功了。
然后依次执行下列命令:
use mysql; update user set host = '%' where user = 'root'; flush privileges;就设置成功了。
我们在自己的电脑上也要安装MySQL,这个从官网下载Windows MySQL即可。安装配置方法很简单,百度即可,这里不再赘述。
配置好后打开cmd,输入命令:
mysql -h 服务器地址 -P 端口(若服务端没有配置端口可以不要这个-P选项) -u 数据库用户名 -p接着要输入密码,然后就可以了。
登录数据库后,我们要进行添加用户、数据库等操作。
(1)添加用户
create user '用户名'@'可接受连接的主机的ip' identified by '用户密码';下面给出几个例子:
创建用户a密码为123456,a只能从本机登录(主机字段为localhost): create user 'a'@'localhost' identified by '123456'; 创建用户b密码为123456,b可以从外网任何主机远程登录(主机字段为%): create user 'b'@'%' identified by '123456';然后授权用户:
grant 权限 on 授权可操作的数据库.授权可操作的表名 to '被授权用户'@'可操作的主机ip';其中权限字段有SELECT , INSERT , UPDATE等,若授予所有权限则这里填ALL。
例如:
给b授予操作所有数据库的所有表的全部权限: grant ALL on *.* to 'b'@'%';需要注意的是,用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用如下的命令:
grant 权限 on 授权可操作的数据库.授权可操作的表名 to '用户名'@'可操作主机' with grant option;(2)新建数据库
create database 数据库名;若要指定新建数据库的编码和排序字符集,则使用:
create database 数据库名 character set 编码 collate 排序字符集;例如:
create database test character set utf8mb4 collate utf8mb4_unicode_ci;对于编码和排序字符集不明白的可参考文章:点击进入
最后切换至数据库:
use 数据库名;