网站用户行为分析——在Ubuntu下安装MySQL及其常用操作
安装MySQL
使用以下命令即可进行mysql安装,注意安装前先更新一下软件源以获得最新版本:
sudo apt-get update #更新软件源
sudo apt-get install mysql-server #安装mysql

上述命令会安装以下包:
apparmor
mysql-client-5.7
mysql-common
mysql-server
mysql-server-5.7
mysql-server-core-5.7
因此无需再安装mysql-client等。安装过程会提示设置mysql root用户的密码,设置完成后等待自动安装即可。默认安装完成就启动了mysql。
我在安装MySQL的时候,通过终端输入命令就直接安装成功了,并没有提示初始化密码,考虑到后续操作可能会使用到密码,所以很有必要对密码进行确认,参考了网上的资料,解决了这个问题:
博客中建议打开/etc/mysql/debian.cnf文件,在这个文件中有系统默认给我们分配的用户名和密码,通过这个密码就可以直接对MySQL进行操作了。在图形界面中找到了这个文件,但是显示文件是未知类型的,找不到合适的应用程序打开它。
最后使用终端打开了这个文件,输入下面的命令:
sudo vim /etc/mysql/debian.cnf

可以看到这个文件中,已经给出了MySQL的默认用户名和密码,用户名不是root,而是而是debian-sys-maint,密码是:NxiAmT4Fc71G735e
将用户名和密码记下,并将密码修改为方便记忆的。终端输入下面的命令:
mysql -u debian-sys-maint -p
输入刚才的密码可以登录成功,接下来要修改密码。按照网上的资料,输入下面选中的命令进行修改,出现了一个ERROR。

更换一个命令进行修改,出现Query OK,但是0 rows affected,怀疑密码没有修改成功。

输入命令:update mysql.user set authentication_string=password('141164') where user='root'and Host = 'localhost';

显示:Query OK, 1 row affected, 1 warning (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 1,密码修改成功。
启动和关闭mysql服务器:
service mysql start
service mysql stop
确认是否启动成功,mysql节点处于LISTEN状态表示启动成功:
sudo netstat -tap | grep mysql
但是执行上面的命令,emmm:
百度搜索:ubuntu netstat 命令找不到,找不到什么相关的信息,按照相关搜索,搜索了netstat 命令找不到,出现一个CentOS找不到netstat的博文,成吧,CentOS也是Linux,试试看。
博文中提示把net-tools包装上就能够解决问题,具体是通过命令:yum install net-tools,但是:

乖乖按照提示,通过apt安装yum,目前为止,对apt的理解就是一个软件的安装工具。安装成功后,执行命令:yum install net-tools,提示需要以root身份执行此命令(突然发现自己对root理解还不够深刻,又百度了一下root的意思:root权限,系统权限的一种,也叫根权限,与SYSTEM权限可以理解成一个概念,但高于Administrator权限,root是Linux和unix系统中的超级管理员用户帐户,该帐户拥有整个系统至高无上的权力,所有对象他都可以操作。获得root权限之后就意味着已经获得了系统的最高权限,这时候你可以对系统中的任何文件(包括系统文件)执行所有增、删、改、查的操作),然后执行sudo yum install net-tools,出现如下结果:
在解决这个问题之前,决定先了解一下什么是yum,度娘告诉我,yum的主要功能是更方便的添加/删除/更新RPM包,它能自动解决包的倚赖性问题,它能便于管理大量系统的更新问题,结合现在在安装MySQL后需要使用缺少的net-tools,大概emmm,对yum有了个认识?可是RPM又特么是啥,接着问度娘,度娘告诉我,RPM一种用于互联网下载包的打包及安装工具,所以yum就是用来管理下载包的打包及安装工具的(可以把yum想象成是一个硕大的软件仓库,里面保存有几乎所有常用的工具,而只需要说出所需的软件包名称,系统就会自动搞定一切。)。虽然还是不太懂,但是还是可以硬着头皮试试的,刚才提示没有已启用的仓库,那么接下来就尝试启用仓库。
查了一中午资料,还是没能启用仓库,换个思路,其实启用仓库的目的就是通过yum安装netstat,现在换别的方法在Ubuntu上安装netstat:
在Ubuntu Linux上安装netstat,apt-get其实是找不到netstat包的,需要用apt-get安装net-tools。net-tools是Linux平台NET-3网络分发包,包括arp、hostname、ifconfig、netstat、rarp、route、plipconfig、slattach、mii-tool、iptunnel和ipmaddr工具。
通过右面的命令在Ubuntu上安装net-tools:apt-get install net-tools,安装成功。 再次执行sudo netstat -tap | grep mysql,确认启动成功。

进入mysql shell界面:
mysql -u root -p
输入上面的命令后出现了下面的问题:

其实在在输入密码这一步的时候,用命令sudo vim /etc/mysql/debian.cnf打开存放数据库密码的文件,发现密码并没有修改成功,就特么很懵逼,然后将文件中的旧密码拷贝到终端中登录,就出现了ERROR 1689(28000),参考网上的博文:
1.使用sudo apt-get install mysql-server安装数据库,在安装的过程中未设置密码。
2.在普通用户下使用命令mysql -uroot -p连接数据库,由于没有设置密码,从而导致了错误:ERROR 1698 (28000): Access denied for user 'root'@'localhost
解决办法:在连接mysql数据库的时候,使用命令sudo mysql -uroot -p连接数据库,由于没有设置密码,所以在需要输入密码的时候,直接按Enter键。
通过上面的操作,成功进入了shell界面,但是之前密码没有设置成功是一个问题。

解决利用sqoop导入MySQL中文乱码的问题(可以插入中文,但不能用sqoop导入中文)导致导入时中文乱码的原因是character_set_server默认设置是latin1,如下图:

可以单个设置修改编码方式set character_set_server=utf8;但是重启会失效,建议按以下方式修改编码方式。
(1)编辑配置文件。sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
(2)在[mysqld]下添加一行character_set_server=utf8。如下图:

进入vim,下面是常用的插入方法:
字符位置插入:
- i 在光标之前插入
- a 在光标之后追加
行位置插入:
- A 在一行的结尾处追加
- I 在一行的开头处插入
- o 在光标所在位置的下一行打开新行插入
- O 在光标所在位置的上一行打开新行插入
本例中,具体的插入操作是,将光标移动到索要插入行的上一行,然后按小写字母o,它的下一行会自动后退一行,此时输入所要插入的文本,输入完毕后,按ESC,然后输入:wq,保存退出,插入完成。
(3)重启MySQL服务:service mysql restart
(4)登陆MySQL,并查看MySQL目前设置的编码:show variables like "char%";

MySQL常用操作
注意:MySQL中每个命令后都要以英文分号;结尾。
每个命令都是“mysql>”开头,通过命令:sudo mysql -uroot -p,进入MySQL shell界面。
mysql> show databases;
MySql刚安装完有两个数据库:mysql和test。mysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行操作。

mysql> use mysql; (打开库,对每个库进行操作就要打开此库)
Database changed
mysql> show tables;
3、显示数据表的结构:
describe 表名;
4、显示表中的记录:
select * from 表名;
例如:显示mysql库中user表中的纪录。所有能对MySQL用户操作的用户都在此表中。
select * from user;
5、建库:
create database 库名;
例如:创建一个名字位aaa的库
mysql> create databases aaa;

注意到这里创建数据库是使用create database而不是create databases。
use 库名;
create table 表名 (字段设定列表);
例如:在刚创建的aaa库中建立表person,表中有id(序号,自动增长),xm(姓名),xb(性别),csny(出身年月)四个字段
use aaa;
mysql> create table person (id int(3) auto_increment not null primary key, xm varchar(10),xb varchar(2),csny date);
可以用describe命令察看刚建立的表结构。
mysql> describe person;

例如:增加几条相关纪录。
mysql>insert into person values(null,'张三','男','1997-01-02');
mysql>insert into person values(null,'李四','女','1996-12-02');
因为在创建表时设置了id自增,因此无需插入id字段,用null代替即可。
可用select命令来验证结果。
mysql> select * from person;

例如:将张三的出生年月改为1971-01-10
mysql> update person set csny='1971-01-10' where xm='张三';
例如:删除张三的纪录。
mysql> delete from person where xm='张三';

10、删库和删表
drop database 库名;
drop table 表名;
11、查看mysql版本
在mysql5.0中命令如下:
show variables like ‘version’;
或者:select version();

网站用户行为分析——在Ubuntu下安装MySQL及其常用操作的更多相关文章
- ubuntu下安装mysql及常用操作
1.可通过ps -ef | grep mysql命令查看系统中是否有安装mysql 如果出现类似上述的页面,就证明是已经安装过了mysql,否则就是没有. 2.安装mysql 很简单,只需要键入如下命 ...
- Ubuntu下安装MySQL及简单操作
Ubuntu上安装MySQL非常简单只需要几条命令就可以完成. 1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client ...
- ubuntu下安装redis及常用操作
reids是一个内存数据库,具有存取速度快,使用简单等优点.我们常常在分布式或者负载均衡的系统中使用它来缓存一些公用的且不是很大量的数据,比如session或者各类token(比如微信的access_ ...
- Ubuntu 下安装 Mysql
这里讲用Ubuntu下安装MySql ubuntu上安装mysql非常简单只需要几条命令就可以完成. 1. sudo apt-get install mysql-server 2. apt-get ...
- Ubuntu下安装MySQL 5.6.23
Ubuntu下安装MySQL 5.6.23 1.下载相应Linux-generic的源代码包.解压,将解压后的文件夹重命名为mysql.移动到/usr/local文件夹下: tar –xzf mysq ...
- Ubuntu下安装mysql与mysql workbench
Ubuntu 安装jdk:[链接] Ubuntu安装eclipse:[链接] Ubuntu下安装MySQL与mysql workbench:[链接] Ubuntu配置tomcat9:[链接] 1.su ...
- ubuntu下安装mysql和配置远程访问
ubuntu下安装mysql和配置远程访问 下载安装mysql sudo apt-get install mysql-client mysql-server 安装的时候会提示要设置root密码,如 ...
- ubuntu 下安装mysql,以及配置远程登录
安装MysQL 在Ubuntu14.04下安装MySQL比较简单,只需下面这条命令就行了: 1.输入 sudo apt-get install mysql-server 2.继续执行后,需要设定MyS ...
- ubuntu下安装mysql
现在的软件越来越好安装,尤其是在ubuntu下安装软件,更是没有技巧,只需要在联网的情况下使用apt-get inatll 即可.在决定安装mysql之前,要先确定系统是否已经安装mysql.如下图: ...
随机推荐
- python 替换指定目录下,所有文本字符串
网页保存后,会把js文件起名为.下载,html里面的引用也会有,很不美观,解决方案:用python替换字符串 import os import re """将当前目录下所 ...
- linux 用户和组操作
linux用户操作 查看登陆用户:whoami (结果最简洁) 或者who mom likes 或者who am i查看所有用户:cat /etc/passwd 添加:sudo adduser lil ...
- GIT团队合作探讨之二--Pull Request
pull request是github/bitbucket给开发人员实现便利合作提供的一个feature.他们提供一个用户友好的web界面在进代码之前来讨论这些变更. 简单说,pull request ...
- ASPNET MVC Error 500.19
今天创建了一个新的ASPNET MVC 项目部署到本地, 生成成功后在浏览器中输入URL却发现报这个错 参照下面的文章我给IIS_IUSRS和IUSR(我比较懒直接everyone)赋予虚拟目录读写权 ...
- redis外网连接的一些坑
前言 在使用阿里云和腾讯云的redis 可以减少很大的维护量.但是在我们的业务场景中遇到了一个情况,阿里和腾讯的redis均不支持外网访问.因此,正好帮人解决一个问题,就拿出来分享一下. 阿呆的故事 ...
- NET(C#):使用HttpWebRequest头中的Range下载文件片段
转自:http://www.mgenware.com/blog/?p=220 HTTP请求包头信息中有一个Range属性可以指定索取部分HTTP请求的文件.在.NET中则通过HttpWebReques ...
- vim c++插件clang_complete
地址 http://www.vim.org/scripts/script.php?script_id=3302 以后应该会用到的,先记下:需要安装clang编译器.
- 零售企业ERP系统慢
数据库优化案例 https://www.cnblogs.com/double-K/p/9210982.html 写在前面 记得在自己学习数据库知识的时候特别喜欢看案例,因为优化的手段是容易掌握的,但是 ...
- whoami
功能说明:显示当前登录的用户名,.
- dba_tables、all_tables、user_tables
本文摘抄自:http://blog.csdn.net/daxiang12092205/article/details/42921063 dba_tables : 系统里所有的表的信息,需要DBA权限才 ...