1.安装服务
[root@ftp2 ~]# yum install -y mariadb*
2.启动服务
[root@ftp2 ~]# systemctl start mariadb
3.进入Mysql
![](https://img-blog.csdnimg.cn/11a1a6cae0f74eb99f8fc4a2d23a419f.png)
因为默认进入Mysql是不需要密码的,所以为了安全 我们可以帮他设置一个密码
4.设置超级用户root登录密码
输入mysqladmin -u root -p password 要设置的密码
输入原密码: 留空enter确定
注:没设置密码这里留空即可 如果更改密码为123456后想要再次更改密码在ENter password: 就不能留空 就要输入123456了
![](https://img-blog.csdnimg.cn/54bdc49b5e8040f4a48643b65c38390b.png)
用户登录:Mysql -u 用户 -p密码 //-p直接跟密码 不要留空!
![](https://img-blog.csdnimg.cn/e0a9bc033b0a4ad89d48d6b1b17653a6.png)
添加用户:
命令为grant 权限 on 数据库名.表名 to ‘用户名’@’登录方式’ identified by ‘密码’命令为grant 权限 on 数据库名.表名 to ‘用户名’@’登录方式’ identified by ‘密码’
![](https://img-blog.csdnimg.cn/4ce921573d2d44cf8d7db36a69aaf021.png)
登录:
权限:
Select 查询
Delet 删除
Update 更新
Alter 添加
登录方式:
% 所有远程登录
Localhost 只允许本地登录
指定的ip 只允许指定ip远程连接登录
数据库 表名由自己创建的。如果想要允许用户对所有数据库和表拥有某个权限不妨用*.*代替
5.创建数据库:
创建一个名为mydatabase的数据库:
注:结尾要用;结束!
![](https://img-blog.csdnimg.cn/35bf87d669cd4b79be51c78a140fc276.png)
查看数据库:
Show databases;
![](https://img-blog.csdnimg.cn/406b07ba167345cd8a1a1120fcf38556.png)
进入数据库
Use 表名
![](https://img-blog.csdnimg.cn/9aba663216e74f6a899efc9afa5bc371.png)
6.创建表
采用MySQL数据库作为认证来源,创建用户认证数据库为www,建立保存用户名及密码的表名为users,建立user1以及user2两个用户,生日分别设置为 1998-9-1和1999-9-1将其密码均设置为6666,并对密码采用password函数加密,表结构如下;
字段名 | 数据类型 | 主键 | 自增 |
ID | int | 是 | 是 |
name | varchar(10) | 否 | 否 |
birthday | datetime | 否 | 否 |
sex | char(1) | 否 | 否 |
Password | Char(8) | 否 | 否 |
7.创建表结构
![](https://img-blog.csdnimg.cn/14956fa34a04417491ebe8a44893d993.png)
8.查看表结构
Desc 表名:
![](https://img-blog.csdnimg.cn/560f91cd9db84df99bf92f6e489d348b.png)
9.创建表用户:
![](https://img-blog.csdnimg.cn/ee52c56235bd47f8b89eb08a3738729f.png)
10.Update 更新表:
![](https://img-blog.csdnimg.cn/9469f2785ec94663a9aa96b5405378cc.png)
还需要创建一个名为user2的用户 我们采用导入的方法执行:
![](https://img-blog.csdnimg.cn/178bd24d00874924bdb6f9df8580cf6f.png)
11.导入表:
1.创建一个名为mysql.txt的文本文件
![](https://img-blog.csdnimg.cn/ea342f8d7370458798c356de45672b3d.png)
2.登录一个拥有权限的用户 进入到数据库底下:
貌似导入不可以使用password加密-
load data infile ’/mysql.txt’ into table 表 fields terminated by ‘,’ lines termin
into table mystudent
fields terminated by’,’
lines terminated by’\n’:
数据库恢复:-在数据库删除后,重新创建数据库 然后导入 表就会恢复
Mysql -u root -p<mysql.sq
如果有导出的数据库 还可以在已经进入的数据库里面直接执行
source /数据库名称.sql 进行数据库表的导入
删除数据库:
Drop database 数据库名
Alter table delete from
12.删除表字段:
如果要删除某一字段,可用命令:ALTER TABLE mytablename DROP 字段名;
13.删除表数据库(sql语句)
删除userinfo表内 id为4的一行内容
MariaDB [userdb]> delete from userinfo where id =4;![](https://img-blog.csdnimg.cn/bf6b50b376c84ab092ddc689f1ec6ce4.png)
14.表字段的选择:
从字段类型的执行效率上,int最高,varchar最低。
状态类型字段,使用char或者varchar是不可取的,int类型更容易建立索引和进行检索,毕竟数字类型是数据库检索的基础,char类型的毕竟需要经过转换,而varchar就更复杂了,其排序不仅需要转换和计算,还需要访问和遵循数据库的排序规则(实际上char也需要排序规则),而消耗的资源也更大。
因此,通常在数据库设计中,都是尽量使用int类型字段而不是字符类型字段,这在大型和超大型数据库的优化中,有明显的性能差异。
15.mysql插入中文字段:
MariaDB [userdb]> show variables like '%character%';
查询 一般 utf8就可以支持中文了
![](https://img-blog.csdnimg.cn/08d6e27945a64f848ce176b3d1f32bd1.png)
设置我刚刚创建的userdb 字符集为utf8
MariaDB [userdb]> alter database userdb character set 'utf8';
![](https://img-blog.csdnimg.cn/e6f1f946886a415bb63c6132337b7429.png)
MariaDB [userdb]> create table gonggao(text char(244));
![](https://img-blog.csdnimg.cn/55440c63b58f427f924cfa93ee6ef7f9.png)
第二种:
MariaDB [userdb]> show variables like "%char%"
MariaDB [userdb]> alter table userinfo change sex sex char(5) character set utf8;
MariaDB [userdb]> set character_set_database=utf8;
开启数据库日志
在/etc/my.cnf中添加
General_log=1 //开启日志功能
General_log_file=/var/log/mariadb/mariadb.log //日志存放位置
或者:↓↓↓
1.开启日志
![](https://img-blog.csdnimg.cn/d7565becda5942628fd8bafde06e07e6.png)
Show variables like “%general_log%”;
![](https://img-blog.csdnimg.cn/ee62fe9fdd4646eca39002bba15f0787.png)
开启数据库备份:
备份命令:mysqldump -u 用户名 -p密码 数据库名 表名>/存储位置/保存的名称
每周五凌晨2:00备份数据库testdb到/var/databak/testdb.sql。[定期备份设置截屏截屏保存为db2]。
创建日志存储地方:
![](https://img-blog.csdnimg.cn/07dec9eff8884b1a9287f0f816ed3f79.png)
[root@ftp2 /]# crontab -e 添加一下内容
打开数据库日志:
MariaDB [(none)]>set global general_log=on; ##开启数据库查询日志功能
MariaDB [(none)]>set global log_output=’table’; ##将日志输出为表格
MariaDB [(none)]>use mysql;
MariaDB [mysql]> select * from general_log; ##查询日志记录
Crontab 定时任务
分 时 日 月 星期 后面跟命令
比如 每周 5凌晨3点 重启web服务器
* 3 * * 5 systemctl restart httpd
分 时 日 月 周
比如每周5,周四凌晨2点 备份mysql的mydatabase数据库的www表备份到>/var/databak/mysql.sql
* 2 * * 5 mysqldump -u root -p123456 mydatabase www>/var/databak/mysql.sql
* 2 * * 4 mysqldump -u root -p123456 mydatabase www>/var/databak/mysql.sql
创建一个数据库 userdb 创建一个表 userinfo 查看表内容
![](https://img-blog.csdnimg.cn/05ba2709030b4281bfc6355d3e76209c.png)
表字段
![](https://img-blog.csdnimg.cn/cc66a07e2f674ce6af44967d055295b3.png)
另一种查询方式 :
查询所有可读的表
![](https://img-blog.csdnimg.cn/936466d1d75941a2b6a8979686b979e6.png)
通过查询到的可读表 查询表字段
通过表字段 查询 表内容
![](https://img-blog.csdnimg.cn/16f10e4f3545476a846fd0577456d886.png)
批量替换字段值:
update table1 set time = replace(time, '12-07', '11-08')
Update 表 set 字段=replace(字段,’源值’,’目标值’)
更新表内某字段,将表字段的源值替换为目标值
![](https://img-blog.csdnimg.cn/503e81415140476dbe461b97346611f6.png)
[root@apache conf.d]# cat /etc/crontab
##如果忘记了 每个*号所代表的作用 可以去/etc/crontab查看介绍
![](https://img-blog.csdnimg.cn/38869406f29a4e3db3c8c3918f249336.png)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)