學python(16) 在linux中安裝資料庫

2021-08-15 03:25:11 字數 2178 閱讀 4343

ubuntu 16.04安裝mysql及問題解決

ubuntu 16.04下使用以下命令即可進行mysql安裝:

sudo apt-get install mysql-server
上述命令會安裝以下包:

mysql-client-5.7

mysql-common

mysql-server

mysql-server-5.7

mysql-server-core-5.7

因此無需再安裝mysql-client等。安裝過程會提示設定mysql root使用者的密碼,設定完成後等待自動安裝即可。預設安裝完成就啟動了mysql。

啟動和關閉mysql伺服器:

service mysql start

service mysql stop

確認是否啟動成功:

sudo netstat -tap | grep mysql
進入mysql shell介面:

mysql -u root -p
解決利用sqoop匯入mysql中文亂碼的問題

導致匯入時中文亂碼的原因是character_set_server預設設定是latin1。

可以單個設定修改編碼方式set character_set_server=utf8;但是重啟會失效,建議按以下方式修改編碼方式。

(1)編輯配置檔案。sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

(2)在[mysqld]下新增一行character_set_server=utf8。如下圖

這裡寫描述

(3)重啟mysql服務。service mysql restart

(4)登陸mysql,並檢視mysql目前設定的編碼show variables like "char%";

這裡寫描述

這樣就可以愉快的匯入中文了!

下面回顧一下安裝過程中我遇到的問題:

1、安裝到renaming removed key_buffer and myisam-recover options (if present)就卡住了,而且ctrl+c 也無法退出,最後我關閉了終端強制退出了,但是我發現運用sudo netstat -tap | grep mysql 居然顯示是啟動成功的,可是進入shell介面就會出現問題,提示error 1045 (28000): access denied for user 'root'@'localhost' (using password:yes)網上找了一堆方法,都無法解決。

無奈考慮解除安裝重灌:

sudo apt-get autoremove mysql* --purge

再次解除安裝。考慮一定要解除安裝非常徹底。

sudo apt-get autoremove mysql* --purge

sudo rm /var/lib/mysql/ -r  //非常重要

sudo rm /etc/mysql/ -r   //非常重要

3、重啟電腦,再次利用命令sudo apt-get install mysql-server 順利安裝成功!

配置遠端訪問

a、編輯配置檔案

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf  將bind-address = 127.0.0.1注釋

b、修改使用者許可權

登入mysql:mysql -u root -p --遠端訪問 mysql -h 192.168.0.201 -p 3306 -u root -p123 123為root使用者密碼

使用者許可權:grant all on *.* to root@'%' identified by '1';  --新增乙個使用者名稱是root且密碼是1的遠端訪問使用者

重新整理:flush privileges;

檢視是否新增成功:select user,host,authentication_string from user; --在5.7中使用者密碼是列authentication_string

退出:quit

c、重啟mysql服務

/etc/init.d/mysql restart

3、完成且測試通過。

ps:總結:一定要解除安裝非常乾淨!

python學習交流、資源共享群:563626388 qq

小朋友學Python(16) 模組

python 模組 module 是乙個 python 檔案,以 py 結尾,包含了 python 物件定義和python語句。模組讓你能夠有邏輯地組織你的 python 段。把相關的 分配到乙個模組裡能讓你的 更好用,更易懂。模組能定義函式,類和變數,模組裡也能包含可執行的 def print i...

Python 1 6 輸入與輸出

python中變數的輸出 列印提示 print hello world print 給我的卡 印度語,你好的意思 輸出變數 url itcast.cn print 我們的 是 url print 我們的 是 s url 在python中,獲取鍵盤輸入的資料的方法是採用raw input函式 至於什麼...

python 16 初識物件導向

面向過程 一切以事物的發展流程為核心 優點 負責的問題流程化,編寫相對簡單 缺點 可擴充套件性差 物件導向 一切以物件為中心.一切皆為物件.具體的某乙個事務就是物件 優點 可擴充套件性強 缺點 程式設計的複雜度高於面向過程 類 就是圖紙,建立物件的第一步 物件 通過類造出來的具體事物,基本格式 cl...