位置: 编程技术 - 正文
推荐整理分享Ubuntu上安装MySQL+问题处理+安全优化(Ubuntu上安装jdk),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:Ubuntu上安装jdk,Ubuntu上安装Windows,Ubuntu上安装百度网盘打不开,ubuntu上安装虚拟机,Ubuntu上安装jdk,Ubuntu上安装CNA,Ubuntu上安装Hadoop,Ubuntu上安装MySQL,内容如对您有帮助,希望把文章链接给更多的朋友!
0.说明
当然,MySQL的安装方法多种多样,在Ubuntu上,你可以采用apt-get的方式安装,这样的好处是:快速方便。基本上,它会帮你解决所有的函数库依赖问题,正常情况下,只要apt-get执行完成,那么MySQL也就可以使用了。
但我更倾向于使用源码的方式来安装MySQL,原因也很简单:除了有详细的官方文档外,你还可以非常清楚地知道你自己在做什么,这点在以后MySQL运行出现问题时将会有很大的帮助!
但即便是按照官方文档来安装,你也会遇到各种各样的问题,这里,我将呈现一个完整的过程给大家,直到完成下面的4个任务:
下载MySQL 5.6
安装准备:安装MySQL依赖函数库
安装与运行MySQL
优化MySQL
(1)账户安全优化
(2)数据库安全优化
我是安装完Ubuntu .后就进行MySQL 5.6的安装,因此非常有参考价值!
1.下载MySQL 5.6
下载地址: - Generic (glibc 2.5) (x, -bit), Compressed TAR Archive
或
Linux - Generic (glibc 2.5) (x, -bit), Compressed TAR Archive
这取决于你用的是位的还是位的,这里,我下载的是位的,下载完成后的包如下:
2.安装准备:安装MySQL依赖函数库
MySQL依赖一个名为libaio的函数库,需要先安装它,否则后面安装MySQL会出现问题。
如下:
这样的话就可以很快安装完libaio函数库了。
3.安装与运行MySQL
(1)分别创建一个名为mysql的用户和用户组
如下:
-r和-s参数的可以使得mysql这个用户没有登陆你系统的权限,这可以保证系统的安全性。
(2)解包与建立软链接
如下:
需要知道的是,正常情况下,我们习惯将编译安装的软件放在/usr/local目录下,当然你也可以自行选择,不过还是建议放在这里。
建立软链接的好处是,如果你需要使用mysql的安装目录,就不用去输入一长串的目录名称了,因为我们解压缩后的mysql包的目录,名字很长。
(3)初始化Data目录
解包完MySQL后,MySQL目录中会有一个data目录:
里面包含的是MySQL运行所必需的系统信息,因此我们需要将这些数据初始化,如下:
请务必按照上面的操作进行,至于详细的是什么意思,为什么要这样做,可以参考官方文档,有非常详细的解释: password语句
使用update语句
使用mysqladmin命令
方式1:使用set password语句
方式2:使用update语句
当然,上面两种方式选一种就可以了。这样的话,我们就为root用户创建了密码,以后在使用root用户登陆到数据库时都需要输入密码,如下:
这时再重新看一下mysql.user表:
可以看到已经为root用户创建为密码,只是这里显示的是密码被哈希加密后的值。
--账户安全优化2:为匿名用户创建密码或删除匿名用户
接下来我们要做的是:
为匿名用户创建密码或删除匿名用户
a.为匿名用户创建密码
与上面的方法相同:
这里我们使用update语句的方法。
另外注意这里的`flush privileges`语句,这个语句的作用是使我们刚刚修改密码的操作马上生效,而无需重启mysql服务,如果没有使用该语句,同时也没有重启mysql服务,使用新密码重新登陆mysql时会一直提示ERROR (): Access denied for user 'root'@'localhost' (using password: YES)错误。
b.删除匿名用户
如果你觉得匿名用户留着实在没有什么必要的话,也可以直接将其删除:
(2)MySQL测试数据库安全优化
--默认情况下的数据库本身存在安全隐患
官方文档的说明:
themysql.dbtable contains rows that permit all accounts to access thetestdatabase and other databases with names that start withtest_
也就是说mysql.db表中有些行允许所有的用户访问test数据库或以名字test_开头的数据库,虽然这对于测试数据库很方便,但其还是带来了一定的安全隐患,所以我们也要对其进行优化。
--数据库安全优化:删除test数据库或名字以test开头的数据库
如下:
关于基本的安全优化,可以参考官方文档:
MySQL中复制数据表中的数据到新表中的操作教程 MySQL是不支持SELECT…INTO语法的,使用INSERTINTO…SELECT替代相同用法,下面我们我们这里简答分一下新表存在和不存在两种情况,具体使用不同的语句。1.新
Mysql数据库分库和分表方式(常用) 本文主要给大家介绍Mysql数据库分库和分表方式(常用),涉及到mysql数据库相关知识,对mysql数据库分库分表相关知识感兴趣的朋友一起学习吧1分库1.1按
InnoDB数据库死锁问题处理 场景描述在update表的时候出现DeadlockLoserDataAccessException异常(Deadlockfoundwhentryingtogetlock;tryrestartingtransaction...)。问题分析这个异常并不会影响用户使用,因
标签: Ubuntu上安装jdk
本文链接地址:https://www.jiuchutong.com/biancheng/319762.html 转载请保留说明!上一篇:简单解决Windows中MySQL的中文乱码与服务启动问题(充电口有烧焦味怎么简单解决)
友情链接: 武汉网站建设