安装的过程比较简单。mysql
可是这里有一个地方须要注意,若是你但愿是可以经过网络访问你安装的数据库的话。sql
在你设置好用户名和密码,以及访问权限后,你可能发现你仍是访问不了。数据库
这是由于你的安装服务器只绑定了可以本地访问,你须要修改配置,让你的服务器可以支持远程访问。安全
具体的方法,请参考 RaspberryPi(树莓派)安装 MariaDB 数据库没有办法远程访问 页面中的文章。服务器
经过运行命令:网络
sudo apt-get update测试
来对你须要安装的系统进行更新,根据网络的状况可能须要的时间也不相同。spa
咱们更新后系统的输出内容为:rest
root@raspberrypi:~# sudo apt-get update
Hit:1 http://archive.raspberrypi.or... buster InRelease
Get:2 http://raspbian.raspberrypi.o... buster InRelease [15.0 kB]
Get:3 http://raspbian.raspberrypi.o... buster/main armhf Packages [13.0 MB]
Fetched 13.0 MB in 19s (694 kB/s)
Reading package lists... Done
root@raspberrypi:~#code
经过下面的状况就能够自动执行安装了:
sudo apt-get install mariadb-server
当服务器安装完成后,你须要运行:
sudo mysql_secure_installation
来为你的数据库设置安全。
主要这个用途是设置你 root 的密码,root 的远程访问权限,是否容许匿名访问,是否容许远程访问等。
若是你只是测试在本地使用这个数据库,你能够不用设置这个。
可是咱们仍是建议你设置。
你能够单独设置一个用户能具备足够 root 的权限执行全部操做,能够进行远程访问。
你也可使用 root 用户进行配置,可是咱们不建议你使用 root 用户。
在你安装的服务器上,使用 mysql 登陆到服务器上。
而后执行下面的命令:
CREATE USER 'honeymoose'@'%' IDENTIFIED BY '12345678';
GRANT USAGE ON *.* TO 'honeymoose'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'honeymoose'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;
FLUSH PRIVILEGES;
请注意,上面的命令是在你使用 root 登陆到服务器上后进行数据库的受权的。
执行上面 SQL 的意图是,建立一个用户,为用户赋权。
若是你如今进行远程链接 MariaDB / MySQL 的时候,你会收到链接 10061 的错误。
按照咱们前面的提示,这是由于绑定的问题。
旧版本的MySQL修改/etc/mysql/my.cnf文件,修改内容相同。
若是你的服务上的版本没有这个文件的话,新版本的服务器,你须要修改:
/etc/mysql/mariadb.conf.d/50-server.cnf 这个文件。
注释掉 ’bind-address
必要的话,能够尝试重启服务器。
重启服务器的命令是:
root@raspberrypi:~# service mariadb restart
查看数据库服务器进程是是否运行的命令是:
service mariadb status
若是服务器输出下面的信息,表示服务器已经运行了,你能够尝试使用 Client 远程进行链接了。
root@raspberrypi:~# service mariadb status
● mariadb.service - MariaDB 10.3.22 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2020-04-05 10:57:14 EDT; 11s ago
Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/
Process: 1691 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 1692 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 1694 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 \] && systemctl set-environment \_WSREP\_START\_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS
Process: 1771 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 1773 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 1740 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 31 (limit: 4035)
Memory: 47.7M
CGroup: /system.slice/mariadb.service
└─1740 /usr/sbin/mysqld
Apr 05 10:57:13 raspberrypi systemd[1]: Starting MariaDB 10.3.22 database server...
Apr 05 10:57:14 raspberrypi mysqld[1740]: 2020-04-05 10:57:14 0 [Note] /usr/sbin/mysqld (mysqld 10.3.22-MariaDB-0+deb10u1) starting as process 1740 ...
Apr 05 10:57:14 raspberrypi systemd[1]: Started MariaDB 10.3.22 database server.
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1775]: Upgrading MySQL tables if necessary.
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1778]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1778]: Looking for 'mysql' as: /usr/bin/mysql
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1778]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1778]: This installation of MySQL is already upgraded to 10.3.22-MariaDB, use --force if you still need to run mysql_upgrade
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1786]: Checking for insecure root accounts.
Apr 05 10:57:14 raspberrypi /etc/mysql/debian-start[1790]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables
另外,你能够查看 MariaDB 运行的端口:
MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE 'port'; | |
---|---|
Variable_name | Value |
port | 3306 |
1 row in set (0.004 sec)
MariaDB [(none)]>