简单在linux中搭建和使用mariadb(mysql)数据库
安装
在centos7上安装mysql时安装的是mariadb,其中mariadb是mysql的分支版本(由于mysql被闭源公司收购有闭源的风险,所以centos7对mysql的默认安装时mariadb)。联网安装命令(需要root权限):
yum install mariadb-server (服务端)
yum install mariadb (客户端)
启动和停止服务
systemctl start mariadb.service #启动MariaDB
systemctl stopmariadb.service #停止MariaDB
…
设置密码
安装之后数据库用户root的密码为空
mysql_secure_installation#设置密码
在以下两处选项使用n,其他的使用y
连接数据及显示数据库基本信息
mysql –u user –p passwd #本地命令行连接
>show databases; #显示数据库
>use databasename; #切换到对应数据库
远程使用工具navicat连接数据库:
mariadb(mysql)数据库默认开启的端口为3306
创建数据库
CREATE DATABASE `ycyspts` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
注意这里的ycyspts被定义为数据库,将成为mysql的关键字,在mysql中为了区分关键字和普通字符串的区别,是用反引号``来表示关键字,使用单引号’’表示普通字符串
连接报错问题解决:
(1)1045 (28000): Access denied for user 'root'@'ip' (using password: YES)
错误表示在进行远程连接的时候密码正确,但是,进行远程授权的时候授权密码错误
(2)1045 (28000): Access denied for user 'root'@'ip' (using password: NO)
密码错误
(3)1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server
错误表示没有进行远程连接授权,需要进行远程授权
>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的MariaDB密码' WITH GRANT OPTION;
>flush privileges;
(4)2003错误
是防火墙原因,是因为防火墙开启数据库端口没打开
关闭防火墙:systemctl stop firewalld