# `TiDB Lightning`: Task Parameters for Data Source
+ Section: **`[mydumper]`**
+ Parameters: 
  + **`data-source-dir`**: Directory for local or URL for external data source
  + **`character-set = "auto|utf8mb4|binary"`**: Charset for **`CREATE TABLE`** statements 
  + **`data-character-set = "auto|utf8mb4|binary"`**: Converts the data source file from the specified character set to `UTF-8` encoding
  + **`data-invalid-char-replace`**: Specifies the replacement character in case of incompatible characters during the character set conversion
  + **`strict-format = true|false`**: For `CSV` data source, every value cannot contain literal new lines
  + **`filter`**: Only import tables if the specified wildcard rules are matched
+ For example, the data source files are located under `./misc/universe-csv/` folder:
```
[mydumper]
data-source-dir = "./misc/universe-csv"
filter = ['*.*', '!mysql.*', '!sys.*', '!INFORMATION_SCHEMA.*', '!PERFORMANCE_SCHEMA.*', '!METRICS_SCHEMA.*', '!INSPECTION_SCHEMA.*']
strict-format = true
```

----------------------------------------------------------------------------------------------------------------------------
character-set
+ auto: (default) automatically detects whether the schema is UTF-8 or GB-18030. An error is reported if the encoding is neither.
+ utf8mb4: the schema files must be encoded as UTF-8; otherwise, an error is reported.
+ binary: do not try to decode the schema files

strict-format
+ the input data in a "strict" format speeds up processing.
+ "strict-format = true" requires that:
   + in CSV, every value cannot contain literal new lines (U+000A and U+000D, or \r and \n) even when quoted, which means new lines are strictly used to separate rows.
   + "Strict" format allows TiDB Lightning to quickly locate split positions of a large file for parallel processing.
   + However, if the input data is not "strict", it may split a valid data in half and corrupt the result.
   + The default value is false for safety instead of speed.

