小白学mysql第一天:mysql安装

第一次写博客,也是刚刚开始学习mysql,总结的不好不对的地方,请大牛多多指点。

1、官网下载二进制安装包:mysql-5.5.60-linux-glibc2.12-x86_64.tar.gz <=====安装有多种方法,之前已试过编译安装,比较麻烦,下次有心情了再总结编译安装吧。
2、解压到mysql安装目录/u01/mysql
3、创建mysql数据存放目录/data/3306/data和/data/3307/data <====打算创建2个实例,一个3306一个3307
4、分别在3306、3307目录下创建my.cnf配置文件和mysql启动脚本 <====mysql文件是自己写的一个启动、停止mysql的shell脚本

好,上面的内容都比较简单,二进制的文件,解压就能用,我们启动下3306试试看:

[root@mysql mysql]# /data/3306/mysql start <==启动
Starting MySQL...
[root@mysql mysql]# ps -ef|grep mysql <===看看相关进程
root 4485 1 0 10:40 pts/0 00:00:00 /bin/sh /u01/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf
mysql 5226 4485 0 10:40 pts/0 00:00:00 /u01/mysql/bin/mysqld --defaults-file=/data/3306/my.cnf --basedir=/u01/mysql --datadir=/data/3306/data --plugin-dir=/u01/mysql/lib/plugin --user=mysql --log-error=/data/3306/mysql_3306.err --open-files-limit=1024 --pid-file=/data/3306/mysqld.pid --socket=/data/3306/mysql.sock --port=3306
root 5252 3434 0 10:41 pts/0 00:00:00 grep mysql
[root@mysql mysql]# 
[root@mysql mysql]# netstat -lntup|grep 330
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 5226/mysqld 
[root@mysql mysql]#

6、进入数据库看看,多实例需要指定sock文件,不然会报错:

[root@mysql Desktop]# mysql <====提示需要一个sock文件
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/mysql/mysql-5.5.32/tmp/mysql.sock' (2)

[root@mysql Desktop]# mysql -uroot -S /data/3306/mysql.sock  <====这里报错是因为我设置了root的密码,所以登录时要指定root密码登录
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

[root@mysql Desktop]# mysql -uroot -pyuanqk -S /data/3306/mysql.sock
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.60-log MySQL Community Server (GPL) <===进来了,这里显示用的是社区版5.5.60

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

mysql> show databases;  
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.06 sec)

mysql> 

7、没什么问题,我们创建个数据库看看,如果不清楚命令,可以使用help create database查看帮助

mysql> help create database;
Name: 'CREATE DATABASE'
Description:
Syntax:
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
    [create_specification] ...

create_specification:
    [DEFAULT] CHARACTER SET [=] charset_name
  | [DEFAULT] COLLATE [=] collation_name

CREATE DATABASE creates a database with the given name. To use this
statement, you need the CREATE privilege for the database. CREATE
SCHEMA is a synonym for CREATE DATABASE.

URL: http://dev.mysql.com/doc/refman/5.5/en/create-database.html


mysql> 
-----------------也可使用show create database mysql查看已安装的数据库使用的命令----------------

mysql> show create database mysql <===这个命令还可以这样写:show create database mysql\G
-> ;
+----------+------------------------------------------------------------------+
| Database | Create Database |
+----------+------------------------------------------------------------------+
| mysql | CREATE DATABASE `mysql` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

好,命令知道了,我们创建个数据库试试

mysql> create database yuanqk;  <====就这么简单,比oracle简单的不止一点点
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| yuanqk |
+--------------------+
5 rows in set (0.00 sec)

mysql> show create database yuanqk
-> ;
+----------+-------------------------------------------------------------------+
| Database | Create Database |
+----------+-------------------------------------------------------------------+
| yuanqk | CREATE DATABASE `yuanqk` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+-------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

8、刚才这么创建数据库什么也不指定的话,默认字符集是latin1,如果是编译安装的话,可以通过DDEFAULT_CHARSET指定默认的字符集。

9、那我想创建其他字符集的数据库怎么办,也非常简单

mysql> create database yuanqk_gbk default character set gbk collate gbk_chinese_ci; <===创建个gbk的数据库
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| yuanqk             |
| yuanqk_gbk         |
+--------------------+
6 rows in set (0.00 sec)

mysql> 

mysql> show databases like '%yuanqk%'; <===对了,这个地方其实可以使用like的
+---------------------+
| Database (%yuanqk%) |
+---------------------+
| yuanqk              |
| yuanqk_gbk          |
+---------------------+
2 rows in set (0.00 sec)

mysql> show create database yuanqk_gbk
    -> ;
+------------+--------------------------------------------------------------------+
| Database   | Create Database                                                    |
+------------+--------------------------------------------------------------------+
| yuanqk_gbk | CREATE DATABASE `yuanqk_gbk` /*!40100 DEFAULT CHARACTER SET gbk */ |
+------------+--------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> 


mysql> create database yuanqk_utf8 default character set utf8 collate utf8_general_ci;  <====创建个utf8的数据库
Query OK, 1 row affected (0.00 sec)

mysql> show create database yuanqk_utf8;
+-------------+----------------------------------------------------------------------+
| Database    | Create Database                                                      |
+-------------+----------------------------------------------------------------------+
| yuanqk_utf8 | CREATE DATABASE `yuanqk_utf8` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+-------------+----------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> 

10、那为什么要设置不同的字符集,因为字符集不一致会导致数据库中文内容出现乱码,但是如果是编译安装的话,得指定DEXTRA_CHARSETS参数,使其支持这些字符集,否则数据库不支持,指定了也没用。

-DEXTRA_CHARSETS=gbk、gb2312、utf8、ascii

11、那在生产环境中如何选择该安装什么字符集呢,这个要看开发程序,一般使用utf8的比较多。

12、好,mysql安装就总结到这,下面学学mysql的一些操作命令再回来总结。

猜你喜欢

转载自www.cnblogs.com/aaallenn/p/9059893.html