Linux系统中的mariadb—数据库服务器的搭建与管理
Linux系统中的mariadb—数据库服务器的搭建与管理
搭建Mariadb数据库
1.下载Mariadb:
yum install mariadb-server -y systemctl start mariadb
2.关闭对外的默认的对外端口3306:
vim /etc/my.cnf: skip-networking=1 systemctl restart mariadb
3.进行安全初始化
虽然下载并启动服务后,就可以使用数据库了。但是,此时并没有设置密码等安全保障措施,因此我们还要对其进行安全初始化:
mysql_secure_installation
上述操作过程中除了设置密码时需要输入,其余的询问提示只需回车即可。
使用用户名,密码验证登陆:
mysql -uroot -predhat mysql -uroot -p
第二种方式输入密码不会回显,更加安全
注意:
上面的命令参数-u和用户名,-p和密码之间无空格
下图为例:
数据库数据管理
管理系统,最基本的就是4种操作:增,删,改,查
查看:
查看全部数据库:SHOW DATABASES
查看数据库内容前,先进入数据库:USE mysql
查看数据库中的表:SHOW TABLES
查看表的结构:DESC user(表名)
查看表的内容:SELECT * FROM user / SELECT Host,Password FROM user
(要查看的表名)
增加条件(附加条件的搜索查看):SELECT Host,User FROM user WHERE Host=‘localhost’
查看Host为localhost的那一条记录的相应的Host,User的信息
表的结构:如:姓名 ,密码等
数据库语法语句大写,以便于与其他字段相区分,且以分号作为语句结尾
不在数据库内也可查看数据:
mysql -uroot -predhat -e “SHOW DATABASES”
下图为例:
增加:
1.CREATE DATABASE bank; (要建立的数据库名) 2.SHOW TABLES; 此时库内无表,为空(要先USE bank) 3.CREATE TABLE linux(建立表名) 4.DESC linux; 表的结构不为空,在建表时指定了 5.INSERT INTO linux values(‘wsp’,‘123’); 向表中插入一条记录(插入数据内容0 6.SELECT * FROM linux; 7.SELECT username,password FROM linux;
表的结构查看后,有一项NULL,意思是该项是否能为空;yes,可以为空,no,不能为空
创建表的时候也是,not null意思是该项不能为空,插入记录时,不能在这一项为空
varchar(10),限制该项最多输入10个字符
下图为例:
更改:
ALTER TABLE linux ADD class varchar(10); 在表linux中添加字段(表的结构)class,限制字符为10,默认可以为空 ALTER TABLE linux ADD age varchar(4) AFTER password; 在表linux中添加字段age在password字段后,限制字符为4 ALTER TABLE linux RENAME user; 将表linux更名,重命名为user UPDATE user SET class=‘linux’ WHERE username=‘wsp’ AND password=‘123’; 将表user中的username为wsp,且passwrd为123的记录,其class字段更新为linux ALTER TABLE linux CHANGE password password VARCHAR(20); (要更改的目标属性) (更改后的表格的选项的属性) 将表linux的属性更改为password VARCHAR(20) (没加not null,不管原来是什么,修改后默认为yes,可以为空)
下图为例:
删除:
ALTER TABLE linux DROP age; 删除表中的字段age DELETE FROM user WHERE username=‘wsp’ 从表user中删除username为wsp的那一条记录 DROP TABLE user; 删除表user DROP DATABASE bank; 删除数据库westos
下图为例:
数据库登陆用户管理
我们之前使用的都是root用户的身份
CREATE USER westos@localhost IDENTIFIED BY ‘wsp‘ 用户名 登陆限制 认证(由’wsp‘字符串认证,即wsp为该用户密码字符串) 创建用户westos,但只能在本地登陆(即,只能在本主机服务器上登陆),密码为wsp GRANT SELECT ON userdata.* TO westos@localhost 授权(对于userdata数据库中的所有表的SELECT权限)给westos用户 GRANT SELECT ON userdata.* TO westos@localhost IDENTIFIED BY ‘wsp’ 创建用户并授权(创建用户,授权一步完成) FLUSH PRIVILEGES 若操作过后,授权表未刷新。可以使用该命令,刷新授权表 REVOKE SELECT ON userdata.* FROM westos@localhost 撤销(取消)用户westos对于userdata.*的SELECT权限(查看权限) SHOW GRANTS FOR westos@localhost; 显示westos用户的授权表 DROP USER westos@localhost; 删除用户westos
想查看用户是否成功创建了,可以查看umysql.ser : SELECT * FROM mysql.user
下图为例:
数据的备份,恢复
在企业中,各种各样的数据是最为宝贵的。因此,做好数据的备份与恢复工作也是很重要的。
mysqldump命令,用于mysql的数据备份 mysqldump --help 查看其可用参数 mysqldump -uroot -predhat --all-data 备份所有数据 mysqldump -uroot -predhat --all-data --no-data 备份了所有数据,但是不备份具体数据(只是备份了表的格式,不备份具体的表的内容)
备份操作:
mysqldump -uroot -predhat userdata > /mnt/userdata.sql 命令 认证用户 认证密码 备份的数据库 备份sql语句导入文件
恢复操作:
(不能直接将备份文件导入mysql -uroot -predhat < /mnt/userdata.sql 会报错提示未选择数据库(应该是要指定要将备份数据导入哪个数据库))
方式1:
编辑备份文件: vim /mnt/userdata.sql CREATE DATABASE userdata; USE userdata; mysql -uroot -predhat < /mnt/userdata.sql 命令 认证用户 认证密码 备份的数据库 备份sql语句导入文件
方式2:
不编辑备份文件: mysql -uroot -predhat -e “CREATE DATABASE userdata;” 先创建出来userdata数据库 mysql -uroot -predhat < /mnt/userdata.sql 命令 认证用户 认证密码 备份的数据库 备份sql语句导入文件
下图为例:
更改用户密码
只要不加载授权表,即可免密登陆mariadb
mysqld_safe --skip-grant-tables & 跳过加载授权表启mysql进程
(这会启动一个进程,但是在启动该进程前,要先关闭之前打开的mariadb服务)
1.在超户密码已知的情况下更改其密码:
mysqladmin -uroot -predhat password westos 更改后密码(新密码)
2.在忘记超户密码的情况下更改其密码:
systemctl stop mariadb 先关闭该服务进程 mysqld_safe --skip-grant-tables & 后台启动跳过授权表加载的进程,免密进入mysql UPDATE mysql.user SET Password='redhat' WHERE User='root'; 更新mysql数据库中的user表单,root用户的password为redhat(密码在系统中明文显示,不经过加密) UPDATE mysql.user SET Password=password('redhat') WHERE User='root'; 更新mysql数据库中的user表单,root用户的password为redhat(对密码以密文加密)
然后关闭了mysqld_safe进程后,再启动服务mariadb
下图为例:
使用图形化界面工具管理数据库
由于现在有许多的便捷的工具,管理数据库也可以不再仅仅使用命令行的方式。这里我使用的是一个名为phpMyAdmin的软件。
1.搭建web服务器
yum install -y httpd firewall-cmd --permanent --add-service=http firewall-cmd --reload
2.解压安装包到web服务器发布目录
tar zxf phpMyAdmin-4.0.10.20-all-languages.tar.gz -C /var/www/html mv phpMyAdmin-4.0.10.20-all-languages phpMyAdmin
3.下载php插件来支持phpMyAdmin软件
yum install -y php yum install -y mbstring-5.4.16-21.el7.x86_64.rpm yum install -y php-mysql.x86_64 systemctl restart httpd
访问:http://172.25.254.160/phpMyAdmin 进行管理
- Blog22@linux介绍mariadb数据管理系统
- linux基础简介 系统安装 常用命令 系统命令 软件管理 搭建Java服务器并进行远程管理
- Linux(Ubuntu16.04)+GitLab8.17deb安装包搭建Git仓库(代码管理系统)
- linux系统管理之ip配置、yum本地仓库搭建、密码破解
- Linux系统管理初步·科学计算环境搭建(待续)
- 在Linux上搭建svn服务器管理项目,Linux系统之间的svn库迁移
- Linux(Ubuntu16.04)+GitLab8.17deb安装包搭建Git仓库(代码管理系统)
- Linux系统mariadb管理
- linux下搭建mrbs会议室预定管理系统
- linux 5.3 管理系统下搭建samba详解
- 百晓生带你玩转linux系统服务搭建系列----搭建samba服务及账户管理
- linux下搭建mrbs会议室预定管理系统
- linux~Mariadb数据库的管理+简易论坛搭建
- [linux] 系统管理常用命令
- 深圳重点能源管控企业搭建能源管理管控系统的好处
- Linux常用系统管理命令(top、free、kill、df)
- (转载)Linux 配置文件简介/登录注销,文件系统,系统管理,守护进程,用户程序配置文件/Understanding Linux configuration files
- Linux系统学习之文件管理
- Linux系统任务计划和系统服务管理
- linux下的系统服务管理及日志管理