Ubuntu系统安装MySQL及常用操作

Ubuntu安装MySQL及常用操作

简述:MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

一、安装MySQL

使用以下命令即可进行mysql安装,注意安装前先更新一下软件源以获得最新版本:

  1. sudo apt-get update  #更新软件源
  2. 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服务器:
  1. service mysql start
  2. service mysql stop

 

 

启动mysql

  • 确认是否启动成功,mysql节点处于LISTEN状态表示启动成功:
  1. sudo netstat -tap | grep mysql

 

 

查看是否启动成功

 

  • 进入mysql shell界面:

    1.mysql -u root -p

 

 

 

 

 

 

 

 

                                            进入shell界面(mysql视图)

 

  • 更改编码格式,解决利用sqoop导入MySQL中文乱码的问题(可以插入中文,但不能用sqoop导入中文)
    导致导入时中文乱码的原因是character_set_server默认设置是latin1,输入
    show variables like "char%";查看如下图。


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

 

(3)退出mysql视图重启MySQL服务。service mysql restart

(4)登录MySQL,再次查看MySQL目前设置的编码。show variables like "char%";

            

 

 

二、MySQL常用操作

注意:MySQL中每个命令后都要以英文分号;结尾。

1、显示数据库
mysql> show databases;
MySql
刚安装完有两个数据库:mysqltestmysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行操作。

2、显示数据库中的表
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 database aaa;

6、建表:
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;

 

7、增加记录
例如:增加几条相关纪录。
mysql>insert into person values(null,'
张三','','1997-01-02′);
mysql>insert into person values(null,'
李四','','1996-12-02′);
注意,字段的值('张三','','1997-01-02')是使用两个英文的单撇号包围起来,后面也是如此。
因为在创建表时设置了id自增,因此无需插入id字段,用null代替即可。
可用select命令来验证结果。
mysql> select * from person;

        

 

8、修改纪录
例如:将张三的出生年月改为1971-01-10
mysql> update person set csny='1971-01-10′ where xm='
张三';

9、删除纪录
例如:删除张三的纪录。
mysql> delete from person where xm='
张三';

10、删库和删表
drop database
库名;
drop table
表名;

11、查看mysql版本
mysql5.0中命令如下:
show variables like 'version';
或者:select version();

三、MySQL卸载,配置远程连接

 

卸载mysql 

  • sudo apt-get remove mysql-*
  • dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
    • 清除残余数据  
  • 检查mysql是否在运行 
    • sudo service mysql status
      • 一般安装完成之后都会自动运行的,如果没有运行就启动mysql服务
        • sudo service mysql start
          • 启动mysql服务
        • service mysql stop
          • 停止mysql服务
        • service mysql restart
          • 重启mysql服务

             

             

  • Uburun下配置mysql远程连接

     

 

  • 修改配置文件
    • sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
      • 注释掉(若不注销无法远程连接)  bind-address=127.0.0.1  

         

         

  • 创建用户

     

    mysql> create user 'dc'@'%' identified by '123456';

     

  • 修改用户权限

     

    mysql -u root -p "Your root passwd"

    mysql> grant all on *.* to root@'%' identified by 'Your root passwd';

    mysql> flush privileges;

    : 为用户dc增加远程访问权限

    mysql -u root -p

    mysql> grant all on *.* to dc@'%' identified by '123456';

    mysql> flush privileges;

                注:dc表示用户名,%表示所有的电脑都可以连接,也可以设置某个ip地址运行连接,第二个123456表示密码

  • 重启MySQL服务

    sudo /etc/init.d/mysql restart

  • 若仍然不行查看是否代开3306端口,打开3306端口

    sudo ufw allow 3306

 

  • 登录mysql,修改权限
    •  grant all privileges on *.* to '账户名'@'%' identified by '密码' with grant option;
    •  flush privileges;

 

 

《任何事都是有可能的。所以别放弃,相信自己,你可以做到的。---->> 闯 !》
原文地址:https://www.cnblogs.com/dingchuang666/p/13121577.html