ubntu 安裝配置mysql

2021-06-27 01:38:56 字數 3152 閱讀 7038

安裝mysql

sudo apt-get install mysql-server

這個應該很簡單了,而且我覺得大家在安裝方面也沒什麼太大問題,所以也就不多說了,下面我們來講講配置。

配置mysql

注意,在ubuntu下mysql預設是只允許本地訪問的,如果你要其他機器也能夠訪問的話,那麼需要改變/etc/mysql/my.cnf配置檔案了!下面我們一步步地來:

預設的mysql安裝之後根使用者是沒有密碼的,所以首先用根使用者進入:

$mysql -u root

在這裡之所以用-u root是因為我現在是一般使用者(firehare),如果不加-u root的話,mysql會以為是firehare在登入。注意,我在這裡沒有進入根使用者模式,因為沒必要。一般來說,對mysql中的資料庫進行操作,根本沒必要進入根使用者模式,只有在設定時才有這種可能。

進入mysql之後,最要緊的就是要設定mysql中的root使用者密碼了,否則,mysql服務無安全可言了。

mysql> grant all privileges on *.* to root@localhost identified by "123456";

注意,我這兒用的是123456做為root使用者的密碼,但是該密碼是不安全的,請大家最好使用大小寫字母與數字混合的密碼,且不少於8位。

這樣的話,就設定好了mysql中的root使用者密碼了。

設定好mysql的root密碼之後,使用以下命令進行登入

$mysql -u root -p 再輸入root密碼即可

設定好密碼之後,如果想再修改的話密碼的話,進入mysql輸入以下命令:

mysql> set password for root@localhost = password('admin10000.com');

上面例子將使用者root的密碼更改為admin10000.com

然後就用root使用者建立你所需要的資料庫。我這裡就以xoops為例:

mysql>create database xoops;

mysql>grant all privileges on xoops.* to xoops_root@localhost identified by "654321";

這樣就建立了乙個xoops_roots的使用者,它對資料庫xoops有著全部許可權。以後就用xoops_root來對xoops資料庫進行管理,而無需要再用root使用者了,而該使用者的許可權也只被限定在xoops資料庫中。

如果你想進行遠端訪問或控制,那麼你要做兩件事:

其一:mysql>grant all privileges on xoops.* to xoops_root@"%" identified by "654321";

允許xoops_root使用者可以從任意機器上登入mysql。

其二:$sudo gedit /etc/mysql/my.cnf

老的版本中

>skip-networking => # skip-networking

新的版本中

>bind-address=127.0.0.1 => bind-address= 你機器的ip

這樣就可以允許其他機器訪問mysql了。

修改mysql的字符集,使它能支援中文

charset 和 collation 有多個級別的設定:伺服器級、資料庫級、表級、列級和連線級 

www.2cto.com  

1.伺服器級 

檢視設定:show global variables like 'character_set_server'; 和 show global variables like 'collation_server'; 

修改設定:在option file (/etc/mysql/my.cnf)裡設定: 

[mysqld] 

character_set_server=utf8 

collation_server=utf8_general_ci 

2. 資料庫級 

檢視設定:select * from information_schema.schemata where schema_name = 'cookbook'; 

設定: 

1.若沒有顯式設定,則自動使用伺服器級的配置 

2.顯式設定:在建立庫時指定 

create database playutf8  default character set latin1 collate latin1_swedish_ci; 

www.2cto.com  

3.表級 

檢視設定:show create table course; 

設定: 

1.若沒有顯式設定,則自動使用資料庫級的配置 

2.顯式設定:在建立表時指定 

create table utf ( id int ) default charset=utf8 default collate=utf8_bin; 

4.列級 

檢視設定:show create table course; 

設定: 

1.若沒有顯式設定,則自動使用表級的配置 

2.顯式設定: 

create table table1(column1 varchar(5) character set latin1 collate latin1_german1_ci); 

5.連線級別 

檢視設定: 

show variables like 'character_set_client';  # 服務端使用這個編碼來理解客戶端發來的statements 

show variables like 'character_set_connection' ; # 我還不知道什麼意思,等看了mysql

原始碼再說 

show variables like 'character_set_results'; # 服務端使用這個編碼回送結果集和錯誤資訊 

設定: 

客戶端在連線時可以指定這些引數;同時,服務端也提供了乙個global範圍的值,客戶端未指定這些引數時,服務端就使用這個global值。這個global值怎麼設定的? 我查遍了很多文件,似乎還沒看到設定的辦法 (有人說通過my.cnf,或者在啟動

mysqld時指定命令列引數,其實都是錯的) 

其他的一些設定方法

Mysql安裝配置

系統環境 rhel5 最小化安裝,只安裝vi工具 核心 2.6.18 8.el5 cd usr local src tarbag tar xzvf mysql 5.1.38.tar.gz c software cd software mysql 5.1.38 configure prefix usr...

Mysql 安裝配置

my.ini 檔案內容如下 mysql 設定mysql客戶端預設字符集 default character set utf8 mysqld 設定3306埠 port 3306 設定mysql的安裝目錄 basedir f software tools mysql mysql 8.0.15 winx6...

MySQL安裝配置

mysql安裝配置 itstar 2.檢測本地是否有mysql已存在的包 rpm qa grep mysql 3.檢測本地是否有mariadb已存在的包 rpm qa grep mariadb 4.如果存在,則使用yum命令解除安裝 mariadb libs 5.5.56 2.el7.x86 64 ...