1. 程式人生 > 其它 >|NO.Z.00006|——————————|^^ 構建 ^^|——|Mysql&Mariadb&yum部署配置.V2|

|NO.Z.00006|——————————|^^ 構建 ^^|——|Mysql&Mariadb&yum部署配置.V2|



[Applications:Mysql&Mariadb&yum部署配置.V2]                                                       [Applications.Databases] [mysql/mariadb5.5.65&yum安裝/配置]








一、mysql資料庫的常用操作:
MariaDB [(none)]> use mysqlclone                                        // use把當前訪問的資料庫切換到目標資料庫
Database changed
MariaDB [mysqlclone]> show tables;                                      // 檢視這個資料庫中有哪些表
MariaDB [mysqlclone]> select * from user;                               // 查詢user這個表裡的內容;
MariaDB [mysqlclone]> select * from user\G                              // 加\G表示橫著往下寫

MariaDB [mysqlclone]> drop database mysqlclone;                         // 刪掉資料庫mysqlclone  
Query OK, 24 rows affected (0.07 sec)
MariaDB [mysqlclone]> drop tables mysqlclone;                          // 刪掉資料庫裡的表
MariaDB [(none)]> system id
uid=0(root) gid=0(root) groups=0(root)
MariaDB [(none)]> select user();                                        // 檢視當前登入的使用者

MariaDB [mysql]> select user,password,host from user;                   // 檢視伺服器中建立的使用者資訊
+------+----------+-----------------------+
| user | password | host                  |
+------+----------+-----------------------+
| root |          | localhost             |                             // 密碼是空的
| root |          | localhost.localdomain |
| root |          | 127.0.0.1             |
| root |          | ::1                   |
|      |          | localhost             |
|      |          | localhost.localdomain |
+------+----------+-----------------------+
6 rows in set (0.00 sec)
二、設定mysql資料庫的密碼安全:
### --- 執行系統自帶的安全指令碼

[root@localhost ~]# which mysql_secure_installation 
/usr/bin/mysql_secure_installation
[root@localhost ~]# mysql_secure_installation
Enter current password for root (enter for none):                   // 輸入當前root賬號的口令,沒有口令直接回車
Set root password? [Y/n] y                                          // 是否設定root賬號的密碼
New password:                                                       // 新密碼                                                   
Re-enter new password:                                              // 再次輸入密碼
Remove anonymous users? [Y/n] y                                     // 是否刪除匿名賬號
Disallow root login remotely? [Y/n] n                               // 是否精緻root賬號遠端登入
Remove test database and access to it? [Y/n] y                      // 是否刪除測試資料庫
Reload privilege tables now? [Y/n]                                  // 載入特權表為的就是讓你剛才的設定生效
[root@localhost ~]# mysql -uroot -p123456                           // 登入mysql資料庫

MariaDB [(none)]> use mysql
MariaDB [mysql]> select user,host,password from user;               // mysql資料庫中檢視使用者的資訊表
+------+-----------------------+-------------------------------------------+
| user | host                  | password                                  |
+------+-----------------------+-------------------------------------------+
| root | localhost             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| root | localhost.localdomain | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| root | 127.0.0.1             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| root | ::1                   | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------+-----------------------+-------------------------------------------+
4 rows in set (0.00 sec)
### --- 註釋
~~~     mysql下使用者名稱是有兩部分組成;user=username@host  “ root | localhost ” 這是一個賬號;
~~~     host表示你從那臺電腦上登入;
~~~     127.0.0.1    預設情況下登入mysql主機的ip地址,預設情況下不允許遠端登入。
~~~     上面的4個賬號都是我們本機的,遠端主機是連不上來的。
~~~     遠端主機想連到這臺伺服器的mysql資料庫,

[root@localhost ~]# mysql -uroot -p123456 -h 192.168.1.58           // 此時還是連不了,需要在mysql伺服器上授權

三、mariadb客戶端程式常用操作:
### --- 客戶端程式:

~~~    mysql:互動式的CLI工具
~~~    mysqldump:備份工具,基於MySQL協議向MySQLd發起查詢請求,
~~~    mysqldump:並將查得的所有資料轉換成insert等寫操作語句儲存文字檔案中。
~~~    mysqladmin:基於mysql協議管理mysqld
~~~    mysqlimport:資料匯入工具
### --- myIsam儲存引擎的管理工具:

~~~    myisamchk:檢查myisam庫
~~~    myisampack:打包myisam表,只讀
### --- 伺服器端程式:

~~~    mysqld_safe
~~~    mysqld    
~~~    mysqld_multi:多例項,示例:mysqld_multi --example    
### --- 常用操作:

[root@localhost ~]# ps -aux      										// 可以檢視到上面兩個服務端程式
mysql    115182  /bin/sh /usr/bin/mysqld_safe --basedir=/usr
mysql    115344   /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql
[root@localhost ~]# getent passwd mysql     							// 檢視mysql的資訊
mysql:x:27:27:MariaDB Server:/var/lib/mysql:/sbin/nologin       		// /var/lib/mysql它的家目錄;

[root@localhost ~]# rpm -q --scripts  mariadb-server  					// 檢視它安裝程式的時候以什麼方式
[root@localhost ~]# which mysqld_multi      							// 檢視該程式
/usr/bin/mysqld_multi

[root@localhost ~]# rpm -qf /usr/bin/mysqld_multi  						// 此程式實現多例項,
mariadb-server-5.5.65-1.el7.x86_64
四、常用操作
### --- 使用者賬號:

~~~		mysql使用者賬號由兩部分組成:‘USERNAME'@HOST';
~~~		說明:HOST限制此使用者可通過哪些遠端主機連線MySQL伺服器
~~~		支援使用萬用字元:%匹配任意長度的任意字元172.16.0.0/255.255.0.0或172.16.%.%;    
~~~		匹配任意單個字元
### --- MySQL客戶端使用模式:

~~~		互動式模式:可執行命令有兩類:
~~~		客戶端命令:\h:help    \u:use    \s:status   \!:system        // MySQL客戶端自身的命令,就是在資料庫中 \h或者\help可以查詢到的命令,都屬於客戶端命令,不需要加分號。
~~~		伺服器端命令:SQL,需要語句結束符;            					  // 伺服器端命令需要加分號。
~~~		指令碼模式:
~~~		mysql   -uUSERNAME  -PASSWORD   < /path/somefile.sql
~~~		mysql>   source /path/from/somefile.sql  
五、mysql常用操作
### --- 建立資料庫:

MariaDB [(none)]> create database testdb;
MariaDB [(none)]> show databases;
| testdb             |
MariaDB [(none)]> \! ls /var/lib/mysql      										// 在MySQL資料庫之下執行linux命令
     testdb
MariaDB [(none)]> \! ls /var/lib/mysql/testdb
db.opt
### --- 方法一:互動式的方法

[root@localhost ~]# cat > test.sql          										// 準備配置檔案
create database testdb2;
show databases;
[root@localhost ~]# cat test.sql 
create database testdb2;
show databases;
### --- 方法二:以重定向的方式

[root@localhost ~]# mysql -uroot -p123456  <test.sql        						// 以重定向的方式去執行命令,相當於執行一個指令碼;
Database
information_schema
mysql
performance_schema
testdb
testdb2
### --- 方案三:以source命令去建立
 
MariaDB [(none)]> source test.sql
+--------------------+
| Database           |
+--------------------+
| testdb             |
| testdb2            |
| testdb3            |
+--------------------+
6 rows in set (0.00 sec)








===============================END===============================


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                    ——W.S.Landor



來自為知筆記(Wiz)